GitNex crashes when loading a Milestone with target date
Description - describe the bug / feature / suggestion in brief :
I created a milestone using GitNex, setting 2019-04-30 as target date (didn't wanted to, but GitNex UI forced me to). Now loading the Milestone crashes the App. Clearing the Milestone target date in the Gitea WebUI fixed the issue.
Expected behaviour - describe what should be the expected result :
Date is displayed correctly. Would be nice to create a Milestone without a date (and a Issue without description would also be nice)
Screenshots - if any:
GitNex version : 1.0-rc6 (f-droid)
Gitea version : 1.7.2
Android version : 9.0
Logcat:
03-11 10:19:26.404 10040 10040 I Email : Unregister all idle mailboxes
03-11 10:19:26.406 26373 26373 W System.err: java.text.ParseException: Unparseable date: "2019-04-30T11:49:03+02:00"
03-11 10:19:26.406 26373 26373 W System.err: at java.text.DateFormat.parse(DateFormat.java:362)
03-11 10:19:26.406 26373 26373 W System.err: at org.mian.gitnex.helpers.TimeHelper.customDateFormatForToast(TimeHelper.java:16)
03-11 10:19:26.406 26373 26373 W System.err: at org.mian.gitnex.adapters.MilestonesAdapter.onBindViewHolder(MilestonesAdapter.java:176)
03-11 10:19:26.406 26373 26373 W System.err: at org.mian.gitnex.adapters.MilestonesAdapter.onBindViewHolder(MilestonesAdapter.java:38)
03-11 10:19:26.406 26373 26373 W System.err: at androidx.recyclerview.widget.RecyclerView$Adapter.onBindViewHolder(RecyclerView.java:6890)
03-11 10:19:26.406 26373 26373 W System.err: at androidx.recyclerview.widget.RecyclerView$Adapter.bindViewHolder(RecyclerView.java:6932)
03-11 10:19:26.406 26373 26373 W System.err: at androidx.recyclerview.widget.RecyclerView$Recycler.tryBindViewHolderByDeadline(RecyclerView.java:5852)
03-11 10:19:26.406 26373 26373 W System.err: at androidx.recyclerview.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline(RecyclerView.java:6119)
03-11 10:19:26.407 26373 26373 W System.err: at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5958)
03-11 10:19:26.407 26373 26373 W System.err: at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5954)
03-11 10:19:26.407 26373 26373 W System.err: at androidx.recyclerview.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:2226)
03-11 10:19:26.407 26373 26373 W System.err: at androidx.recyclerview.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1557)
03-11 10:19:26.407 26373 26373 W System.err: at androidx.recyclerview.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1517)
03-11 10:19:26.407 26373 26373 W System.err: at androidx.recyclerview.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:612)
03-11 10:19:26.407 26373 26373 W System.err: at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:3990)
03-11 10:19:26.407 26373 26373 W System.err: at androidx.recyclerview.widget.RecyclerView.dispatchLayout(RecyclerView.java:3707)
03-11 10:19:26.407 26373 26373 W System.err: at androidx.recyclerview.widget.RecyclerView.onLayout(RecyclerView.java:4260)
03-11 10:19:26.407 26373 26373 W System.err: at android.view.View.layout(View.java:20672)
03-11 10:19:26.407 26373 26373 W System.err: at android.view.ViewGroup.layout(ViewGroup.java:6194)
03-11 10:19:26.407 26373 26373 W System.err: at androidx.swiperefreshlayout.widget.SwipeRefreshLayout.onLayout(SwipeRefreshLayout.java:625)
03-11 10:19:26.407 26373 26373 W System.err: at android.view.View.layout(View.java:20672)
03-11 10:19:26.407 26373 26373 W System.err: at android.view.ViewGroup.layout(ViewGroup.java:6194)
03-11 10:19:26.407 26373 26373 W System.err: at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1083)
03-11 10:19:26.407 26373 26373 W System.err: at android.view.View.layout(View.java:20672)
03-11 10:19:26.407 26373 26373 W System.err: at android.view.ViewGroup.layout(ViewGroup.java:6194)
03-11 10:19:26.407 26373 26373 W System.err: at androidx.viewpager.widget.ViewPager.onLayout(ViewPager.java:1775)
03-11 10:19:26.407 26373 26373 W System.err: at android.view.View.layout(View.java:20672)
03-11 10:19:26.407 26373 26373 W System.err: at android.view.ViewGroup.layout(ViewGroup.java:6194)
03-11 10:19:26.407 26373 26373 W System.err: at com.google.android.material.appbar.HeaderScrollingViewBehavior.layoutChild(HeaderScrollingViewBehavior.java:148)
03-11 10:19:26.407 26373 26373 W System.err: at com.google.android.material.appbar.ViewOffsetBehavior.onLayoutChild(ViewOffsetBehavior.java:41)
03-11 10:19:26.407 26373 26373 W System.err: at com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior.onLayoutChild(AppBarLayout.java:1631)
03-11 10:19:26.407 26373 26373 W System.err: at androidx.coordinatorlayout.widget.CoordinatorLayout.onLayout(CoordinatorLayout.java:898)
03-11 10:19:26.407 26373 26373 W System.err: at android.view.View.layout(View.java:20672)
03-11 10:19:26.407 26373 26373 W System.err: at android.view.ViewGroup.layout(ViewGroup.java:6194)
03-11 10:19:26.407 26373 26373 W System.err: at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)
03-11 10:19:26.407 26373 26373 W System.err: at android.widget.FrameLayout.onLayout(FrameLayout.java:261)
03-11 10:19:26.407 26373 26373 W System.err: at android.view.View.layout(View.java:20672)
03-11 10:19:26.407 26373 26373 W System.err: at android.view.ViewGroup.layout(ViewGroup.java:6194)
03-11 10:19:26.407 26373 26373 W System.err: at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1812)
03-11 10:19:26.407 26373 26373 W System.err: at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1656)
03-11 10:19:26.407 26373 26373 W System.err: at android.widget.LinearLayout.onLayout(LinearLayout.java:1565)
03-11 10:19:26.407 26373 26373 W System.err: at android.view.View.layout(View.java:20672)
03-11 10:19:26.407 26373 26373 W System.err: at android.view.ViewGroup.layout(ViewGroup.java:6194)
03-11 10:19:26.407 26373 26373 W System.err: at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)
03-11 10:19:26.407 26373 26373 W System.err: at android.widget.FrameLayout.onLayout(FrameLayout.java:261)
03-11 10:19:26.408 26373 26373 W System.err: at android.view.View.layout(View.java:20672)
03-11 10:19:26.408 26373 26373 W System.err: at android.view.ViewGroup.layout(ViewGroup.java:6194)
03-11 10:19:26.408 26373 26373 W System.err: at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1812)
03-11 10:19:26.408 26373 26373 W System.err: at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1656)
03-11 10:19:26.408 26373 26373 W System.err: at android.widget.LinearLayout.onLayout(LinearLayout.java:1565)
03-11 10:19:26.408 26373 26373 W System.err: at android.view.View.layout(View.java:20672)
03-11 10:19:26.408 26373 26373 W System.err: at android.view.ViewGroup.layout(ViewGroup.java:6194)
03-11 10:19:26.408 26373 26373 W System.err: at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)
03-11 10:19:26.408 26373 26373 W System.err: at android.widget.FrameLayout.onLayout(FrameLayout.java:261)
03-11 10:19:26.408 26373 26373 W System.err: at com.android.internal.policy.DecorView.onLayout(DecorView.java:753)
03-11 10:19:26.408 26373 26373 W System.err: at android.view.View.layout(View.java:20672)
03-11 10:19:26.408 26373 26373 W System.err: at android.view.ViewGroup.layout(ViewGroup.java:6194)
03-11 10:19:26.408 26373 26373 W System.err: at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:2792)
03-11 10:19:26.408 26373 26373 W System.err: at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2319)
03-11 10:19:26.408 26373 26373 W System.err: at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1460)
03-11 10:19:26.408 26373 26373 W System.err: at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7183)
03-11 10:19:26.408 26373 26373 W System.err: at android.view.Choreographer$CallbackRecord.run(Choreographer.java:949)
03-11 10:19:26.408 26373 26373 W System.err: at android.view.Choreographer.doCallbacks(Choreographer.java:761)
03-11 10:19:26.408 26373 26373 W System.err: at android.view.Choreographer.doFrame(Choreographer.java:696)
03-11 10:19:26.408 26373 26373 W System.err: at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:935)
03-11 10:19:26.408 26373 26373 W System.err: at android.os.Handler.handleCallback(Handler.java:873)
03-11 10:19:26.408 26373 26373 W System.err: at android.os.Handler.dispatchMessage(Handler.java:99)
03-11 10:19:26.408 26373 26373 W System.err: at android.os.Looper.loop(Looper.java:193)
03-11 10:19:26.408 26373 26373 W System.err: at android.app.ActivityThread.main(ActivityThread.java:6718)
03-11 10:19:26.408 26373 26373 W System.err: at java.lang.reflect.Method.invoke(Native Method)
03-11 10:19:26.408 26373 26373 W System.err: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
03-11 10:19:26.408 26373 26373 W System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
03-11 10:19:26.410 2432 6876 V LocSvc_HIDL_Subscription_jni: networkinfo_update
03-11 10:19:26.411 2432 6876 V LocSvc_HIDL_Subscription_jni: [networkinfo_update][325] [HC] =>> [HS]
03-11 10:19:26.411 540 540 V LocSvc_HIDL_IzatSubscription: [networkinfoUpdate][322] [HS] <<<<= [HC]
03-11 10:19:26.412 26373 26373 D AndroidRuntime: Shutting down VM
03-11 10:19:26.413 2432 6876 V LocSvc_HIDL_Subscription_jni: Exit Result 0
03-11 10:19:26.417 26373 26373 E AndroidRuntime: FATAL EXCEPTION: main
03-11 10:19:26.417 26373 26373 E AndroidRuntime: Process: org.mian.gitnex, PID: 26373
03-11 10:19:26.417 26373 26373 E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method 'long java.util.Date.getTime()' on a null object reference
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at java.util.Calendar.setTime(Calendar.java:1749)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at java.text.SimpleDateFormat.format(SimpleDateFormat.java:984)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at java.text.SimpleDateFormat.format(SimpleDateFormat.java:977)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at java.text.DateFormat.format(DateFormat.java:341)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at org.mian.gitnex.helpers.TimeHelper.customDateFormatForToast(TimeHelper.java:22)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at org.mian.gitnex.adapters.MilestonesAdapter.onBindViewHolder(MilestonesAdapter.java:176)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at org.mian.gitnex.adapters.MilestonesAdapter.onBindViewHolder(MilestonesAdapter.java:38)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at androidx.recyclerview.widget.RecyclerView$Adapter.onBindViewHolder(RecyclerView.java:6890)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at androidx.recyclerview.widget.RecyclerView$Adapter.bindViewHolder(RecyclerView.java:6932)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at androidx.recyclerview.widget.RecyclerView$Recycler.tryBindViewHolderByDeadline(RecyclerView.java:5852)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at androidx.recyclerview.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline(RecyclerView.java:6119)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5958)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5954)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at androidx.recyclerview.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:2226)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at androidx.recyclerview.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1557)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at androidx.recyclerview.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1517)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at androidx.recyclerview.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:612)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:3990)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at androidx.recyclerview.widget.RecyclerView.dispatchLayout(RecyclerView.java:3707)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at androidx.recyclerview.widget.RecyclerView.onLayout(RecyclerView.java:4260)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.View.layout(View.java:20672)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.ViewGroup.layout(ViewGroup.java:6194)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at androidx.swiperefreshlayout.widget.SwipeRefreshLayout.onLayout(SwipeRefreshLayout.java:625)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.View.layout(View.java:20672)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.ViewGroup.layout(ViewGroup.java:6194)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1083)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.View.layout(View.java:20672)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.ViewGroup.layout(ViewGroup.java:6194)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at androidx.viewpager.widget.ViewPager.onLayout(ViewPager.java:1775)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.View.layout(View.java:20672)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.ViewGroup.layout(ViewGroup.java:6194)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at com.google.android.material.appbar.HeaderScrollingViewBehavior.layoutChild(HeaderScrollingViewBehavior.java:148)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at com.google.android.material.appbar.ViewOffsetBehavior.onLayoutChild(ViewOffsetBehavior.java:41)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior.onLayoutChild(AppBarLayout.java:1631)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at androidx.coordinatorlayout.widget.CoordinatorLayout.onLayout(CoordinatorLayout.java:898)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.View.layout(View.java:20672)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.ViewGroup.layout(ViewGroup.java:6194)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.widget.FrameLayout.onLayout(FrameLayout.java:261)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.View.layout(View.java:20672)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.ViewGroup.layout(ViewGroup.java:6194)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1812)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1656)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.widget.LinearLayout.onLayout(LinearLayout.java:1565)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.View.layout(View.java:20672)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.ViewGroup.layout(ViewGroup.java:6194)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.widget.FrameLayout.onLayout(FrameLayout.java:261)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.View.layout(View.java:20672)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.ViewGroup.layout(ViewGroup.java:6194)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1812)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1656)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.widget.LinearLayout.onLayout(LinearLayout.java:1565)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.View.layout(View.java:20672)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.ViewGroup.layout(ViewGroup.java:6194)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.widget.FrameLayout.onLayout(FrameLayout.java:261)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at com.android.internal.policy.DecorView.onLayout(DecorView.java:753)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.View.layout(View.java:20672)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.ViewGroup.layout(ViewGroup.java:6194)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:2792)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2319)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1460)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7183)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.Choreographer$CallbackRecord.run(Choreographer.java:949)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.Choreographer.doCallbacks(Choreographer.java:761)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.Choreographer.doFrame(Choreographer.java:696)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:935)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.os.Handler.handleCallback(Handler.java:873)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:99)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.os.Looper.loop(Looper.java:193)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:6718)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
03-11 10:19:26.417 26373 26373 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
03-11 10:19:26.429 2432 4216 W ActivityManager: Force finishing activity org.mian.gitnex/.activities.RepoDetailActivity