Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ColorWheelView incorrect state handling leads to crash #58

Closed
mtotschnig opened this issue Sep 16, 2019 · 1 comment
Closed

ColorWheelView incorrect state handling leads to crash #58

mtotschnig opened this issue Sep 16, 2019 · 1 comment

Comments

@mtotschnig
Copy link
Contributor

When ColorWhellView tries to restore its state, app crashes, with below stacktrace.

Steps to reproduce

  1. Activate Developer options and switch on option "Don't keep activities"
  2. Open a SimpleColorWheelDialog. Put app into background, e.g by clicking on system UI Home button. Bring app back into foreground via task switcher.

App crashes

Test Environment

Property Value
Library version 3.1-androidx
Android version API 25

Stack Trace

    java.lang.RuntimeException: Unable to start activity ComponentInfo{org.totschnig.myexpenses.debug/org.totschnig.myexpenses.activity.AccountEdit}: java.lang.NullPointerException: Attempt to get length of null array
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2665)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2726)
        at android.app.ActivityThread.-wrap12(ActivityThread.java)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1477)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:154)
        at android.app.ActivityThread.main(ActivityThread.java:6119)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)
     Caused by: java.lang.NullPointerException: Attempt to get length of null array
        at android.os.Parcel.readFloatArray(Parcel.java:1048)
        at eltos.simpledialogfragment.color.ColorWheelView$SavedState.<init>(ColorWheelView.java:398)
        at eltos.simpledialogfragment.color.ColorWheelView$SavedState.<init>(ColorWheelView.java:388)
        at eltos.simpledialogfragment.color.ColorWheelView$SavedState$1.createFromParcel(ColorWheelView.java:412)
        at eltos.simpledialogfragment.color.ColorWheelView$SavedState$1.createFromParcel(ColorWheelView.java:410)
        at android.os.Parcel.readParcelable(Parcel.java:2471)
        at android.os.Parcel.readValue(Parcel.java:2365)
        at android.os.Parcel.readSparseArrayInternal(Parcel.java:2813)
        at android.os.Parcel.readSparseArray(Parcel.java:2068)
        at android.os.Parcel.readValue(Parcel.java:2422)
        at android.os.Parcel.readArrayMapInternal(Parcel.java:2732)
        at android.os.BaseBundle.unparcel(BaseBundle.java:269)
        at android.os.Bundle.getSparseParcelableArray(Bundle.java:934)
        at com.android.internal.policy.PhoneWindow.restoreHierarchyState(PhoneWindow.java:2104)
        at android.app.Dialog.onRestoreInstanceState(Dialog.java:462)
        at androidx.fragment.app.DialogFragment.onActivityCreated(DialogFragment.java:475)
        at androidx.fragment.app.Fragment.performActivityCreated(Fragment.java:2619)
        at androidx.fragment.app.FragmentManagerImpl.moveToState(FragmentManagerImpl.java:904)
        at androidx.fragment.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManagerImpl.java:1238)
        at androidx.fragment.app.FragmentManagerImpl.moveToState(FragmentManagerImpl.java:1303)
        at androidx.fragment.app.FragmentManagerImpl.dispatchStateChange(FragmentManagerImpl.java:2659)
        at androidx.fragment.app.FragmentManagerImpl.dispatchActivityCreated(FragmentManagerImpl.java:2613)
        at androidx.fragment.app.FragmentController.dispatchActivityCreated(FragmentController.java:246)
        at androidx.fragment.app.FragmentActivity.onStart(FragmentActivity.java:542)
        at androidx.appcompat.app.AppCompatActivity.onStart(AppCompatActivity.java:201)
        at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1248)
        at android.app.Activity.performStart(Activity.java:6696)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2628)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2726) 
        at android.app.ActivityThread.-wrap12(ActivityThread.java) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1477) 
        at android.os.Handler.dispatchMessage(Handler.java:102) 
        at android.os.Looper.loop(Looper.java:154) 
        at android.app.ActivityThread.main(ActivityThread.java:6119) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776) 
@eltos
Copy link
Owner

eltos commented Sep 30, 2019

Thanks a lot! 👍

@eltos eltos closed this as completed Sep 30, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants