Skip to content

Crash in SearchImageFragment #2585

@ashishkumar468

Description

@ashishkumar468

Summary:
The Observable in SearchImageFragment has not been disposed as per the fragment lifecycle and because of which the app crashes (along with memory leaks), when RxCallbacks are received after the fragment is stopped/detached

System logs:

USER_COMMENT=French locale

ANDROID_VERSION=7.1.2
APP_VERSION_NAME=2.10.1.260
BRAND=google
PHONE_MODEL=Nexus 5
CUSTOM_DATA=
STACK_TRACE=io.reactivex.exceptions.OnErrorNotImplementedException: Attempt to invoke virtual method 'void android.view.View.setVisibility(int)' on a null object reference
at io.reactivex.internal.functions.Functions$OnErrorMissingConsumer.accept(Functions.java:704)
at io.reactivex.internal.functions.Functions$OnErrorMissingConsumer.accept(Functions.java:701)
at io.reactivex.internal.observers.LambdaObserver.onError(LambdaObserver.java:77)
at io.reactivex.internal.observers.LambdaObserver.onNext(LambdaObserver.java:67)
at io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.drainNormal(ObservableObserveOn.java:200)
at io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.run(ObservableObserveOn.java:252)
at io.reactivex.android.schedulers.HandlerScheduler$ScheduledRunnable.run(HandlerScheduler.java:119)

at android.os.Handler.handleCallback(Handler.java:751)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6186)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:889)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:779)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.view.View.setVisibility(int)' on a null object reference
at fr.free.nrw.commons.explore.images.SearchImageFragment.handleNoInternet(SearchImageFragment.java:233)
at fr.free.nrw.commons.explore.images.SearchImageFragment.updateImageList(SearchImageFragment.java:136)
at fr.free.nrw.commons.explore.SearchActivity.lambda$setTabs$1$SearchActivity(SearchActivity.java:112)
at fr.free.nrw.commons.explore.SearchActivity$$Lambda$1.accept(Unknown Source)
at io.reactivex.internal.observers.LambdaObserver.onNext(LambdaObserver.java:63)
... 10 more
java.lang.NullPointerException: Attempt to invoke virtual method 'void android.view.View.setVisibility(int)' on a null object reference
at fr.free.nrw.commons.explore.images.SearchImageFragment.handleNoInternet(SearchImageFragment.java:233)
at fr.free.nrw.commons.explore.images.SearchImageFragment.updateImageList(SearchImageFragment.java:136)
at fr.free.nrw.commons.explore.SearchActivity.lambda$setTabs$1$SearchActivity(SearchActivity.java:112)
at fr.free.nrw.commons.explore.SearchActivity$$Lambda$1.accept(Unknown Source)
at io.reactivex.internal.observers.LambdaObserver.onNext(LambdaObserver.java:63)
at io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.drainNormal(ObservableObserveOn.java:200)
at io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.run(ObservableObserveOn.java:252)
at io.reactivex.android.schedulers.HandlerScheduler$ScheduledRunnable.run(HandlerScheduler.java:119)

at android.os.Handler.handleCallback(Handler.java:751)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6186)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:889)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:779)  ```

**Device and Android version:** 
APP_VERSION_NAME=2.10.1.260
BRAND=google
PHONE_MODEL=Nexus 5

 
**Commons app version:** 
2.10.1.260

**Would you like to work on the issue?**
Yes

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions