Skip to content
This repository was archived by the owner on Aug 8, 2023. It is now read-only.
This repository was archived by the owner on Aug 8, 2023. It is now read-only.

Annotation images broken #9936

@ivovandongen

Description

@ivovandongen

Re-use of annotation images leads to an interesting crash on master.

Reproduction:

  • Test app > Add markers in bulk > dropdown - select 100
  • Test app > Query feature properties > click twice (easier to debug, less going on)

Log leading up to the crash

09-08 17:43:19.529 8146-8146/com.mapbox.mapboxsdk.testapp W/Bitmap: Called getConfig() on a recycle()'d bitmap! This is undefined behavior!
09-08 17:43:19.529 8146-8146/com.mapbox.mapboxsdk.testapp W/Bitmap: Called getWidth() on a recycle()'d bitmap! This is undefined behavior!
09-08 17:43:19.529 8146-8146/com.mapbox.mapboxsdk.testapp W/Bitmap: Called getHeight() on a recycle()'d bitmap! This is undefined behavior!
09-08 17:43:19.529 8146-8146/com.mapbox.mapboxsdk.testapp W/Bitmap: Called getConfig() on a recycle()'d bitmap! This is undefined behavior!
09-08 17:43:19.529 8146-8146/com.mapbox.mapboxsdk.testapp W/Bitmap: Called getWidth() on a recycle()'d bitmap! This is undefined behavior!
09-08 17:43:19.529 8146-8146/com.mapbox.mapboxsdk.testapp W/Bitmap: Called getHeight() on a recycle()'d bitmap! This is undefined behavior!
09-08 17:43:19.529 8146-8146/com.mapbox.mapboxsdk.testapp W/Bitmap: Called getDensity() on a recycle()'d bitmap! This is undefined behavior!
09-08 17:43:19.529 8146-8146/com.mapbox.mapboxsdk.testapp W/Bitmap: Called getRowBytes() on a recycle()'d bitmap! This is undefined behavior!
09-08 17:43:19.529 8146-8146/com.mapbox.mapboxsdk.testapp W/Bitmap: Called getHeight() on a recycle()'d bitmap! This is undefined behavior!
09-08 17:43:19.532 8146-8146/com.mapbox.mapboxsdk.testapp W/Bitmap: Called getRowBytes() on a recycle()'d bitmap! This is undefined behavior!
09-08 17:43:19.532 8146-8146/com.mapbox.mapboxsdk.testapp W/Bitmap: Called getHeight() on a recycle()'d bitmap! This is undefined behavior!
09-08 17:43:19.533 8146-8146/com.mapbox.mapboxsdk.testapp A/Bitmap: Error, cannot access an invalid/free'd bitmap here!

The crash dump:


********** Crash dump: **********
Build fingerprint: 'google/sailfish/sailfish:7.1.2/NJH47F/4146041:user/release-keys'
pid: 8146, tid: 8146, name: pboxsdk.testapp  >>> com.mapbox.mapboxsdk.testapp <<<
signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
Stack frame #00 pc 00049e30  /system/lib/libc.so (tgkill+12)
Stack frame #01 pc 000475c3  /system/lib/libc.so (pthread_kill+34)
Stack frame #02 pc 0001d635  /system/lib/libc.so (raise+10)
Stack frame #03 pc 00019181  /system/lib/libc.so (__libc_android_abort+34)
Stack frame #04 pc 00017048  /system/lib/libc.so (abort+4)
Stack frame #05 pc 0000c327  /system/lib/libcutils.so (__android_log_assert+114)
Stack frame #06 pc 000a00bb  /system/lib/libandroid_runtime.so (_ZNK7android6Bitmap11assertValidEv+18)
Stack frame #07 pc 000a0137  /system/lib/libandroid_runtime.so (_ZN7android6Bitmap11getSkBitmapEP8SkBitmap+6)
Stack frame #08 pc 000a03a1  /system/lib/libandroid_runtime.so
Stack frame #09 pc 018767b9  /system/framework/arm/boot-framework.oat (offset 0x1595000) (android.graphics.Bitmap.nativeCopyPixelsToBuffer+116)
Stack frame #10 pc 01877df9  /system/framework/arm/boot-framework.oat (offset 0x1595000) (android.graphics.Bitmap.copyPixelsToBuffer+428)
Stack frame #11 pc 000a99c1  /system/lib/libart.so (art_quick_invoke_stub_internal+64)
Stack frame #12 pc 00406689  /system/lib/libart.so (art_quick_invoke_stub+232)
Stack frame #13 pc 000b0c71  /system/lib/libart.so (_ZN3art9ArtMethod6InvokeEPNS_6ThreadEPjjPNS_6JValueEPKc+136)
Stack frame #14 pc 001edf2b  /system/lib/libart.so (_ZN3art11interpreter34ArtInterpreterToCompiledCodeBridgeEPNS_6ThreadEPNS_9ArtMethodEPKNS_7DexFile8CodeItemEPNS_11ShadowFrameEPNS_6JValueE+198)
Stack frame #15 pc 001e84f3  /system/lib/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+478)
Stack frame #16 pc 00400b1d  /system/lib/libart.so (MterpInvokeVirtualQuick+320)
Stack frame #17 pc 000a0594  /system/lib/libart.so (ExecuteMterpImpl+29972)
Stack frame #18 pc 001cb73f  /system/lib/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadEPKNS_7DexFile8CodeItemERNS_11ShadowFrameENS_6JValueEb+290)
Stack frame #19 pc 001d029f  /system/lib/libart.so (_ZN3art11interpreter33ArtInterpreterToInterpreterBridgeEPNS_6ThreadEPKNS_7DexFile8CodeItemEPNS_11ShadowFrameEPNS_6JValueE+114)
Stack frame #20 pc 001e84d7  /system/lib/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+450)
Stack frame #21 pc 00400b1d  /system/lib/libart.so (MterpInvokeVirtualQuick+320)
Stack frame #22 pc 000a0594  /system/lib/libart.so (ExecuteMterpImpl+29972)
Stack frame #23 pc 001cb73f  /system/lib/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadEPKNS_7DexFile8CodeItemERNS_11ShadowFrameENS_6JValueEb+290)
Stack frame #24 pc 001d029f  /system/lib/libart.so (_ZN3art11interpreter33ArtInterpreterToInterpreterBridgeEPNS_6ThreadEPKNS_7DexFile8CodeItemEPNS_11ShadowFrameEPNS_6JValueE+114)
Stack frame #25 pc 001e84d7  /system/lib/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+450)
Stack frame #26 pc 003fefbf  /system/lib/libart.so (MterpInvokeDirect+266)
Stack frame #27 pc 0009c914  /system/lib/libart.so (ExecuteMterpImpl+14484)
Stack frame #28 pc 001cb73f  /system/lib/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadEPKNS_7DexFile8CodeItemERNS_11ShadowFrameENS_6JValueEb+290)
Stack frame #29 pc 001d029f  /system/lib/libart.so (_ZN3art11interpreter33ArtInterpreterToInterpreterBridgeEPNS_6ThreadEPKNS_7DexFile8CodeItemEPNS_11ShadowFrameEPNS_6JValueE+114)
Stack frame #30 pc 001e84d7  /system/lib/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+450)
Stack frame #31 pc 003fefbf  /system/lib/libart.so (MterpInvokeDirect+266)
Stack frame #32 pc 0009c914  /system/lib/libart.so (ExecuteMterpImpl+14484)
Stack frame #33 pc 001cb73f  /system/lib/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadEPKNS_7DexFile8CodeItemERNS_11ShadowFrameENS_6JValueEb+290)
Stack frame #34 pc 001d029f  /system/lib/libart.so (_ZN3art11interpreter33ArtInterpreterToInterpreterBridgeEPNS_6ThreadEPKNS_7DexFile8CodeItemEPNS_11ShadowFrameEPNS_6JValueE+114)
Stack frame #35 pc 001e84d7  /system/lib/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+450)
Stack frame #36 pc 003fefbf  /system/lib/libart.so (MterpInvokeDirect+266)
Stack frame #37 pc 0009c914  /system/lib/libart.so (ExecuteMterpImpl+14484)
Stack frame #38 pc 001cb73f  /system/lib/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadEPKNS_7DexFile8CodeItemERNS_11ShadowFrameENS_6JValueEb+290)
Stack frame #39 pc 001d029f  /system/lib/libart.so (_ZN3art11interpreter33ArtInterpreterToInterpreterBridgeEPNS_6ThreadEPKNS_7DexFile8CodeItemEPNS_11ShadowFrameEPNS_6JValueE+114)
Stack frame #40 pc 001e84d7  /system/lib/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+450)
Stack frame #41 pc 00400b1d  /system/lib/libart.so (MterpInvokeVirtualQuick+320)
Stack frame #42 pc 000a0594  /system/lib/libart.so (ExecuteMterpImpl+29972)
Stack frame #43 pc 001cb73f  /system/lib/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadEPKNS_7DexFile8CodeItemERNS_11ShadowFrameENS_6JValueEb+290)
Stack frame #44 pc 001d029f  /system/lib/libart.so (_ZN3art11interpreter33ArtInterpreterToInterpreterBridgeEPNS_6ThreadEPKNS_7DexFile8CodeItemEPNS_11ShadowFrameEPNS_6JValueE+114)
Stack frame #45 pc 001e84d7  /system/lib/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+450)
Stack frame #46 pc 003fefbf  /system/lib/libart.so (MterpInvokeDirect+266)
Stack frame #47 pc 0009c914  /system/lib/libart.so (ExecuteMterpImpl+14484)
Stack frame #48 pc 001cb73f  /system/lib/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadEPKNS_7DexFile8CodeItemERNS_11ShadowFrameENS_6JValueEb+290)
Stack frame #49 pc 001d029f  /system/lib/libart.so (_ZN3art11interpreter33ArtInterpreterToInterpreterBridgeEPNS_6ThreadEPKNS_7DexFile8CodeItemEPNS_11ShadowFrameEPNS_6JValueE+114)
Stack frame #50 pc 001e84d7  /system/lib/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+450)
Stack frame #51 pc 003fedc1  /system/lib/libart.so (MterpInvokeInterface+836)
Stack frame #52 pc 0009ca14  /system/lib/libart.so (ExecuteMterpImpl+14740)
Stack frame #53 pc 001cb73f  /system/lib/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadEPKNS_7DexFile8CodeItemERNS_11ShadowFrameENS_6JValueEb+290)
Stack frame #54 pc 001d029f  /system/lib/libart.so (_ZN3art11interpreter33ArtInterpreterToInterpreterBridgeEPNS_6ThreadEPKNS_7DexFile8CodeItemEPNS_11ShadowFrameEPNS_6JValueE+114)
Stack frame #55 pc 001e84d7  /system/lib/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+450)
Stack frame #56 pc 00400b1d  /system/lib/libart.so (MterpInvokeVirtualQuick+320)
Stack frame #57 pc 000a0594  /system/lib/libart.so (ExecuteMterpImpl+29972)
Stack frame #58 pc 001cb73f  /system/lib/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadEPKNS_7DexFile8CodeItemERNS_11ShadowFrameENS_6JValueEb+290)
Stack frame #59 pc 001d029f  /system/lib/libart.so (_ZN3art11interpreter33ArtInterpreterToInterpreterBridgeEPNS_6ThreadEPKNS_7DexFile8CodeItemEPNS_11ShadowFrameEPNS_6JValueE+114)
Stack frame #60 pc 001e84d7  /system/lib/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+450)
Stack frame #61 pc 00400b1d  /system/lib/libart.so (MterpInvokeVirtualQuick+320)
Stack frame #62 pc 000a0594  /system/lib/libart.so (ExecuteMterpImpl+29972)
Stack frame #63 pc 001cb73f  /system/lib/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadEPKNS_7DexFile8CodeItemERNS_11ShadowFrameENS_6JValueEb+290)

Metadata

Metadata

Assignees

No one assigned

    Labels

    AndroidMapbox Maps SDK for Androidcrash

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions