Page MenuHomeGitPull.it

Fix crash caused by null LifecycleOwner on version 2.4.6
Closed, ResolvedPublic

Description

Dear Developers of the amazing Free/Libre and Open Source app Libre BusTO ,
Please triage my crash:

Version code:
69

Version name:
2.4.6

Android version:
14

Phone:
SM-M135F

Brand:
samsung

Stack:
java.lang.IllegalStateException: Can't access the Fragment View's LifecycleOwner for LinesDetailFragment{1b53177} (4f5a1285-f31e-4336-ad93-2684c5d0cb6c) when getView() is null i.e., before onCreateView() or after onDestroyView()
	at androidx.fragment.app.Fragment.getViewLifecycleOwner(Fragment.java:390)
	at it.reyboz.bustorino.fragments.LinesDetailFragment.updatePositionsIcons(LinesDetailFragment.kt:1413)
	at it.reyboz.bustorino.fragments.LinesDetailFragment.access$updatePositionsIcons(LinesDetailFragment.kt:101)
	at it.reyboz.bustorino.fragments.LinesDetailFragment$animateNewPositionMove$1$1.onAnimationUpdate(LinesDetailFragment.kt:1353)
	at android.animation.Animator$AnimatorCaller.lambda$static$4(Animator.java:858)
	at android.animation.Animator$AnimatorCaller$$ExternalSyntheticLambda6.call(Unknown Source:4)
	at android.animation.Animator.callOnList(Animator.java:669)
	at android.animation.ValueAnimator.animateValue(ValueAnimator.java:1645)
	at android.animation.ValueAnimator.animateBasedOnTime(ValueAnimator.java:1405)
	at android.animation.ValueAnimator.doAnimationFrame(ValueAnimator.java:1563)
	at android.animation.AnimationHandler.doAnimationFrame(AnimationHandler.java:344)
	at android.animation.AnimationHandler.-$$Nest$mdoAnimationFrame(Unknown Source:0)
	at android.animation.AnimationHandler$1.doFrame(AnimationHandler.java:86)
	at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1687)
	at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1698)
	at android.view.Choreographer.doCallbacks(Choreographer.java:1153)
	at android.view.Choreographer.doFrame(Choreographer.java:1069)
	at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1646)
	at android.os.Handler.handleCallback(Handler.java:958)
	at android.os.Handler.dispatchMessage(Handler.java:99)
	at android.os.Looper.loopOnce(Looper.java:230)
	at android.os.Looper.loop(Looper.java:319)
	at android.app.ActivityThread.main(ActivityThread.java:8919)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:578)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1103)


logcat (last 30 lines):
12-16 08:26:51.881 E/AndroidRuntime( 1850): FATAL EXCEPTION: main
12-16 08:26:51.881 E/AndroidRuntime( 1850): Process: it.reyboz.bustorino, PID: 1850
12-16 08:26:51.881 E/AndroidRuntime( 1850): java.lang.IllegalStateException: Can't access the Fragment View's LifecycleOwner for LinesDetailFragment{1b53177} (4f5a1285-f31e-4336-ad93-2684c5d0cb6c) when getView() is null i.e., before onCreateView() or after onDestroyView()
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at androidx.fragment.app.Fragment.getViewLifecycleOwner(Fragment.java:390)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at it.reyboz.bustorino.fragments.LinesDetailFragment.updatePositionsIcons(LinesDetailFragment.kt:1413)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at it.reyboz.bustorino.fragments.LinesDetailFragment.access$updatePositionsIcons(LinesDetailFragment.kt:101)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at it.reyboz.bustorino.fragments.LinesDetailFragment$animateNewPositionMove$1$1.onAnimationUpdate(LinesDetailFragment.kt:1353)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at android.animation.Animator$AnimatorCaller.lambda$static$4(Animator.java:858)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at android.animation.Animator$AnimatorCaller$$ExternalSyntheticLambda6.call(Unknown Source:4)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at android.animation.Animator.callOnList(Animator.java:669)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at android.animation.ValueAnimator.animateValue(ValueAnimator.java:1645)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at android.animation.ValueAnimator.animateBasedOnTime(ValueAnimator.java:1405)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at android.animation.ValueAnimator.doAnimationFrame(ValueAnimator.java:1563)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at android.animation.AnimationHandler.doAnimationFrame(AnimationHandler.java:344)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at android.animation.AnimationHandler.-$$Nest$mdoAnimationFrame(Unknown Source:0)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at android.animation.AnimationHandler$1.doFrame(AnimationHandler.java:86)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1687)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1698)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at android.view.Choreographer.doCallbacks(Choreographer.java:1153)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at android.view.Choreographer.doFrame(Choreographer.java:1069)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1646)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at android.os.Handler.handleCallback(Handler.java:958)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at android.os.Handler.dispatchMessage(Handler.java:99)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at android.os.Looper.loopOnce(Looper.java:230)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at android.os.Looper.loop(Looper.java:319)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at android.app.ActivityThread.main(ActivityThread.java:8919)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at java.lang.reflect.Method.invoke(Native Method)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:578)
12-16 08:26:51.881 E/AndroidRuntime( 1850): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1103)

Thank you! :)

Initially reported by Francesco Cavallero

Generated with https://lab.reyboz.it/libre-busto/crash-report/ (P15)

Details

Changelog (EN)
Fix crash caused by calling lifecycleowner at incorrect time
Changelog (IT)
Risolto crash nel chiamare lifecycleowner nel momento sbagliato