TeamAmaze / TeamAmaze/AmazeFileManager
NPE on `MainFragment#loadlist`
Open
Nobody has claimed this yet.
Crash-NullPointerException
Issue-Bug
Issue-Severe (high)
- Dominant language
- Kotlin
- Stars
- 6.4k
- Forks
- 1.7k
- Avg merge
- 3d 9h
- Merged PRs (30d)
- 1
Description
Issue explanation (write below this line)
Exception
- App Name: Amaze
- Package: com.amaze.filemanager
- Version: 3.8.2
- User Action: UI Error
- Request: Application crash
- OS: Linux
OnePlus/OnePlus9_EEA/OnePlus9:12/RKQ1.211119.001/R.GDPR.202205311640:user/release-keys
12 - 31 - Device: OnePlus9
- Model: LE2113
- Product: OnePlus9_EEA
Crash log
java.lang.NullPointerException: Parameter specified as non-null is null:
method kotlin.jvm.internal.Intrinsics.checkNotNullParameter, parameter path
at
com.amaze.filemanager.filesystem.FileProperties.remapPathForApi30OrAbove(Unknown
Source:2)
at
com.amaze.filemanager.ui.fragments.MainFragment.loadlist(MainFragment.java:582)
at
com.amaze.filemanager.ui.fragments.MainFragment.goBack(MainFragment.java:1085)
at
com.amaze.filemanager.ui.activities.MainActivity.lambda$onBackPressed$6(MainActivity.java:895)
at
com.amaze.filemanager.ui.activities.MainActivity.$r8$lambda$fKbQXJTjmE3tEXFhvzq2Q8y2c_E(Unknown
Source:0)
at
com.amaze.filemanager.ui.activities.MainActivity$$ExternalSyntheticLambda14.apply(Unknown
Source:2)
at
com.amaze.filemanager.ui.activities.MainActivity.executeWithMainFragment(MainActivity.java:2504)
at
com.amaze.filemanager.ui.activities.MainActivity.executeWithMainFragment(MainActivity.java:2496)
at
com.amaze.filemanager.ui.activities.MainActivity.onBackPressed(MainActivity.java:893)
at android.app.Activity.onKeyUp(Activity.java:3863)
at android.view.KeyEvent.dispatch(KeyEvent.java:2878)
at android.app.Activity.dispatchKeyEvent(Activity.java:4216)
at
androidx.core.app.ComponentActivity.superDispatchKeyEvent(ComponentActivity.java:122)
at
androidx.core.view.KeyEventDispatcher.dispatchKeyEvent(KeyEventDispatcher.java:84)
at
androidx.core.app.ComponentActivity.dispatchKeyEvent(ComponentActivity.java:140)
at
androidx.appcompat.app.AppCompatActivity.dispatchKeyEvent(AppCompatActivity.java:599)
at
androidx.appcompat.view.WindowCallbackWrapper.dispatchKeyEvent(WindowCallbackWrapper.java:59)
at
androidx.appcompat.app.AppCompatDelegateImpl$AppCompatWindowCallback.dispatchKeyEvent(AppCompatDelegateImpl.java:3068)
at
androidx.appcompat.view.WindowCallbackWrapper.dispatchKeyEvent(WindowCallbackWrapper.java:59)
at
com.android.internal.policy.DecorView.dispatchKeyEvent(DecorView.java:448)
at
android.view.ViewRootImpl$ViewPostImeInputStage.processKeyEvent(ViewRootImpl.java:6665)
at
android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:6522)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:5995)
at
android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:6057)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:6018)
at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:6192)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:6026)
at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:6249)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:5999)
at
android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:6057)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:6018)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:6026)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:5999)
at
android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:6057)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:6018)
at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:6225)
at
android.view.ViewRootImpl$ImeInputStage.onFinishedInputEvent(ViewRootImpl.java:6383)
at
android.view.inputmethod.InputMethodManager$PendingEvent.run(InputMethodManager.java:3284)
at
android.view.inputmethod.InputMethodManager.invokeFinishedInputEventCallback(InputMethodManager.java:2840)
at
android.view.inputmethod.InputMethodManager.finishedInputEvent(InputMethodManager.java:2831)
at
android.view.inputmethod.InputMethodManager$ImeInputEventSender.onInputEventFinished(InputMethodManager.java:3261)
at
android.view.InputEventSender.dispatchInputEventFinished(InputEventSender.java:154)
at android.os.MessageQueue.nativePollOnce(Native Method)
at android.os.MessageQueue.next(MessageQueue.java:339)
at android.os.Looper.loopOnce(Looper.java:179)
at android.os.Looper.loop(Looper.java:344)
at android.app.ActivityThread.main(ActivityThread.java:8212)
at java.lang.reflect.Method.invoke(Native Method)
at
com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:584)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1034)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Inspect FileProperties.remapPathForApi30OrAbove and MainFragment.loadlist at line 582, using the Android 12 crash trace as the starting point. Reproduce the back-navigation flow if possible and verify that returning through MainFragment no longer passes a null path or crashes.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, kotlin
- Domain
- mobile
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100