kiwix / kiwix-xulrunner

[ARCHIVED] Legacy Kiwix desktop solution for Windows/macOS/Linux
https://download.kiwix.org/release/kiwix-xulrunner/
GNU General Public License v3.0
112 stars 28 forks source link

Crash (and loss of data) in Android content manager #413

Closed kelson42 closed 7 years ago

kelson42 commented 7 years ago

Steps:

You get:

You should get:

Remark:

mhutti1 commented 7 years ago

@kelson42 There are two issues here. The lack of continuity in our download process and this specific crash. The crash should be easy enough to fix but we should open a separate issue about download continuity (Its quite a large task and will likely require a database table).

EladKeyshawn commented 7 years ago

@kelson42 For me the app does not crash, but indeed when you restart the app there are no remains of the downloads. @mhutti1 are you able to reproduce the problem?

mhutti1 commented 7 years ago

@kelson42 @EladKeyshawn I also don't crash.

mhutti1 commented 7 years ago

418

kelson42 commented 7 years ago

@mhutti1 @EladKeyshawn

Here is my crashlog

12-31 16:57:40.733  2753  3438 D InputMethodManagerService: [HARDWARE_KEYBOARD] (refreshImeWindowVis) mImeWindowVis= 0 inputVisible = falsehaveHardKeyboard = false hardKeyShown = false
12-31 16:57:40.743  2259  3075 D libEGL  : eglTerminate EGLDisplay = 0xb32bf624
12-31 16:57:40.763  2259  3075 D libEGL  : eglTerminate EGLDisplay = 0xb32bf624
12-31 16:57:40.778  3186  3392 D mali_winsys: new_window_surface returns 0x3000,  [2560x48]-format:1
12-31 16:57:40.783  3186  3186 D BatteryMeterView: onDraw batteryColor : -1107296257
12-31 16:57:40.788  2259  2259 D libEGL  : eglInitialize EGLDisplay = 0xbe94e404
12-31 16:57:40.788  2259  2259 D libEGL  : eglTerminate EGLDisplay = 0xbe94e464
12-31 16:57:40.793  3186  3186 D PhoneStatusBar: setSystemUiVisibility vis=8700 mask=ffffffff oldVal=8600 newVal=8700 diff=100
12-31 16:57:40.793  3186  3186 D BrilliantCut_Keyguard: onWindowFocusChanged - false
12-31 16:57:40.798  3186  3186 D VisualEffectCircleUnlockEffect: clearEffect
12-31 16:57:40.798  3186  3186 D VisualEffectCircleUnlockEffect: cancelAllAnimator
12-31 16:57:40.798  3186  3186 D VisualEffectCircleUnlockEffect: clearEffect
12-31 16:57:40.798  3186  3186 D VisualEffectCircleUnlockEffect: cancelAllAnimator
12-31 16:57:40.808  2259  2259 D libEGL  : eglInitialize EGLDisplay = 0xbe94e404
12-31 16:57:40.828  2259  2259 D libEGL  : eglInitialize EGLDisplay = 0xbe94e404
12-31 16:57:41.328  2753  3077 D InputReader: Input event(3): value=1 when=28118965656000
12-31 16:57:41.328  2753  3077 I InputReader: Touch event's action is 0x0 (deviceType=0) [pCnt=1, s=0.2457 ] when=28118965835000
12-31 16:57:41.328  2753  3077 D InputReader: lastThreadEndTime = 28117976299660, currentThreadStartTime = 28117976307076, diff = 0
12-31 16:57:41.328  2753  3076 I InputDispatcher: Delivering touch to (3186): action: 0x4, toolType: 1
12-31 16:57:41.328  2753  3076 I InputDispatcher: Delivering touch to (7138): action: 0x0, toolType: 1
12-31 16:57:41.333  7138  7138 D ViewRootImpl: ViewPostImeInputStage processPointer 0
12-31 16:57:41.453  2753  3077 D InputReader: Input event(3): value=0 when=28119090169000
12-31 16:57:41.453  2753  3077 I InputReader: Touch event's action is 0x1 (deviceType=0) [pCnt=1, s=] when=28119090172000
12-31 16:57:41.453  2753  3076 I InputDispatcher: Delivering touch to (7138): action: 0x1, toolType: 1
12-31 16:57:41.453  7138  7138 D ViewRootImpl: ViewPostImeInputStage processPointer 1
12-31 16:57:41.463  7138  7138 E InputEventReceiver: Exception dispatching input event.
12-31 16:57:41.463  7138  7138 E MessageQueue-JNI: Exception in MessageQueue callback: handleReceiveCallback
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.net.NetworkInfo.getType()' on a null object reference
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at org.kiwix.kiwixmobile.LibraryFragment.isWiFi(LibraryFragment.java:188)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at org.kiwix.kiwixmobile.LibraryFragment.onItemClick(LibraryFragment.java:176)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.widget.AdapterView.performItemClick(AdapterView.java:346)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.widget.AbsListView.performItemClick(AbsListView.java:1577)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.widget.AbsListView$PerformClick.run(AbsListView.java:3970)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.widget.AbsListView.onTouchUp(AbsListView.java:6080)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.widget.AbsListView.onTouchEvent(AbsListView.java:5839)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.View.dispatchTouchEvent(View.java:10018)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2833)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2504)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.widget.AbsListView.dispatchTouchEvent(AbsListView.java:5771)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2844)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2519)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2844)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2519)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2844)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2519)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2844)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2519)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2844)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2519)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2844)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2519)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2844)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2519)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2844)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2519)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2844)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2519)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at com.android.internal.policy.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:2869)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1861)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.app.Activity.dispatchTouchEvent(Activity.java:3061)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.support.v7.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:63)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.support.v7.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:63)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at com.android.internal.policy.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:2830)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.View.dispatchPointerEvent(View.java:10253)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:5509)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:5345)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4790)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4843)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4809)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:4950)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4817)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:5007)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4790)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4843)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4809)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4817)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4790)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:7511)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:7379)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:7340)
12-31 16:57:41.483  7138  7138 E MessageQueue-JNI:  at androi
12-31 16:57:41.483  7138  7138 D AndroidRuntime: Shutting down VM
12-31 16:57:41.483  7138  7138 E AndroidRuntime: FATAL EXCEPTION: main
12-31 16:57:41.483  7138  7138 E AndroidRuntime: Process: org.kiwix.kiwixmobile, PID: 7138
12-31 16:57:41.483  7138  7138 E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.net.NetworkInfo.getType()' on a null object reference
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at org.kiwix.kiwixmobile.LibraryFragment.isWiFi(LibraryFragment.java:188)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at org.kiwix.kiwixmobile.LibraryFragment.onItemClick(LibraryFragment.java:176)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.widget.AdapterView.performItemClick(AdapterView.java:346)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.widget.AbsListView.performItemClick(AbsListView.java:1577)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.widget.AbsListView$PerformClick.run(AbsListView.java:3970)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.widget.AbsListView.onTouchUp(AbsListView.java:6080)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.widget.AbsListView.onTouchEvent(AbsListView.java:5839)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.View.dispatchTouchEvent(View.java:10018)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2833)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2504)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.widget.AbsListView.dispatchTouchEvent(AbsListView.java:5771)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2844)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2519)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2844)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2519)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2844)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2519)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2844)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2519)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2844)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2519)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2844)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2519)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2844)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2519)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2844)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2519)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2844)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2519)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at com.android.internal.policy.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:2869)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1861)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.app.Activity.dispatchTouchEvent(Activity.java:3061)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.support.v7.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:63)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.support.v7.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:63)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at com.android.internal.policy.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:2830)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.View.dispatchPointerEvent(View.java:10253)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:5509)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:5345)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4790)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4843)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4809)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:4950)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4817)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:5007)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4790)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4843)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4809)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4817)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4790)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:7511)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:7379)
12-31 16:57:41.483  7138  7138 E AndroidRuntime:    at android.view.Vie
12-31 16:57:41.498  2753  3466 W ActivityManager:   Force finishing activity org.kiwix.kiwixmobile/.ZimManageActivity
mhutti1 commented 7 years ago

@kelson42 Can you check if this is fixed now by @borisfba ?

kelson42 commented 7 years ago

It seems that this bug is fixed, as it is impossible to trigger a download if no connection is there. But #403 is re-appeared and #418 seems to still exist to me. I will close that bug as this is not reproducable any more. THX