[Libreoffice-commits] core.git: android/source

Michael Weghorn (via logerrit) logerrit at kemper.freedesktop.org
Fri Mar 6 15:45:35 UTC 2020


 android/source/src/java/org/libreoffice/LOKitThread.java |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 3e5a18820aadd904f16f1654db6c4edf634ccd3d
Author:     Michael Weghorn <m.weghorn at posteo.de>
AuthorDate: Fri Mar 6 09:01:16 2020 +0100
Commit:     Michael Weghorn <m.weghorn at posteo.de>
CommitDate: Fri Mar 6 16:44:57 2020 +0100

    android: LOKitThread::refresh: Add null check
    
    This fixes as another crash with Android Viewer that
    could (ocassionaly) be observed by
    
    * open some ODT document
    * press the "back button" while the document is still
      being loaded
    * repeat steps 1-2 until the crash occurs
    
    Corresponding 'adb logcat' output:
    
        I LibreOfficeMainActivity: onDestroy..
        I LOKitTileProvider: Document destroyed: /storage/emulated/0/Download/simple.odt
        D LOKitThread: mTileProvider==null when calling updatePartPageRectangles
        D AndroidRuntime: Shutting down VM
        E AndroidRuntime: FATAL EXCEPTION: main
        E AndroidRuntime: Process: org.libreoffice, PID: 9190
        E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke interface method 'boolean org.libreoffice.TileProvider.isSpreadsheet()' on a null object reference
        E AndroidRuntime:        at org.libreoffice.LOKitThread.refresh(LOKitThread.java:159)
        E AndroidRuntime:        at org.libreoffice.LOKitThread.access$000(LOKitThread.java:26)
        E AndroidRuntime:        at org.libreoffice.LOKitThread$1.run(LOKitThread.java:239)
        E AndroidRuntime:        at android.os.Handler.handleCallback(Handler.java:883)
        E AndroidRuntime:        at android.os.Handler.dispatchMessage(Handler.java:100)
        E AndroidRuntime:        at android.os.Looper.loop(Looper.java:214)
        E AndroidRuntime:        at android.app.ActivityThread.main(ActivityThread.java:7356)
        E AndroidRuntime:        at java.lang.reflect.Method.invoke(Native Method)
        E AndroidRuntime:        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
        E AndroidRuntime:        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
    
    Change-Id: I9787a13b3485a87a133f8b5e4e03bbf3618fb2f0
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90089
    Tested-by: Jenkins
    Reviewed-by: Michael Weghorn <m.weghorn at posteo.de>

diff --git a/android/source/src/java/org/libreoffice/LOKitThread.java b/android/source/src/java/org/libreoffice/LOKitThread.java
index 2031b95e25f8..9c216b54fb1f 100644
--- a/android/source/src/java/org/libreoffice/LOKitThread.java
+++ b/android/source/src/java/org/libreoffice/LOKitThread.java
@@ -156,7 +156,7 @@ class LOKitThread extends Thread {
         mLayerClient.clearAndResetlayers();
         redraw();
         updatePartPageRectangles();
-        if (mTileProvider.isSpreadsheet()) {
+        if (mTileProvider != null && mTileProvider.isSpreadsheet()) {
             updateCalcHeaders();
         }
     }


More information about the Libreoffice-commits mailing list