Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Crash on startup AndroidRendererFrontend #2779

Closed
westnordost opened this issue Aug 28, 2024 · 26 comments · Fixed by #2863 or #2887
Closed

Crash on startup AndroidRendererFrontend #2779

westnordost opened this issue Aug 28, 2024 · 26 comments · Fixed by #2863 or #2887
Assignees
Labels
android bug Something isn't working

Comments

@westnordost
Copy link
Collaborator

Describe the bug
On app startup, a user reported that the following crash occurs:

#00 pc 00000000008a971c  libmaplibre.so
#01 pc 00000000008a6484  libmaplibre.so
#02 pc 00000000004a3740  libmaplibre.so (mbgl::android::AndroidRendererFrontend::AndroidRendererFrontend(mbgl::android::MapRenderer&)+96)
#03 pc 00000000004d7b1c  libmaplibre.so (mbgl::android::NativeMapView::NativeMapView(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)+204)
#04 pc 00000000004f6610  libmaplibre.so (std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > jni::MakePeer<mbgl::android::NativeMapView, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char>(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)+92)
#05 pc 00000000004ebc20  libmaplibre.so (jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)) const::'lambda'(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&)::operator()(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&) const+160)
#06 pc 00000000004ebb58  libmaplibre.so (auto jni::NativeMethodMaker<void (jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)) const::'lambda'(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&)::*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&) const>::operator()<jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)) const::'lambda'(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&)>(char const*, jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)) const::'lambda'(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&) const&)::'lambda'(_JNIEnv*, jni::jobject*, jni::jobject*, jni::jobject*, jni::jobject*, float, unsigned char)::__invoke(_JNIEnv*, jni::jobject*, jni::jobject*, jni::jobject*, jni::jobject*, float, unsigned char)+92)
#07 pc 00000000004ebd8c  libmaplibre.so (auto auto jni::MakeNativeMethod<auto jni::NativeMethodMaker<void (jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)) const::'lambda'(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&)::*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&) const>::operator()<jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)) const::'lambda'(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&)>(char const*, jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)) const::'lambda'(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&) const&)::'lambda'(_JNIEnv*, jni::jobject*, jni::jobject*, jni::jobject*, jni::jobject*, float, unsigned char)>(char const*, char const*, jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::Nati
#10 pc 0000000000b8b67e  /oat/arm64/base.vdex
#12 pc 0000000000b8a950  /oat/arm64/base.vdex
#14 pc 0000000000b8ab78  /oat/arm64/base.vdex
#16 pc 0000000000b8a79c  /oat/arm64/base.vdex

To Reproduce
Maybe you can reproduce it too in this release:
https://github.com/streetcomplete/StreetComplete/releases/tag/v59.0-alpha2

Platform information:

  • OS: Android 12
  • Version 11.2.0

See also
streetcomplete/StreetComplete#5850

@westnordost westnordost added the bug Something isn't working label Aug 28, 2024
@louwers
Copy link
Collaborator

louwers commented Aug 28, 2024

Maybe you can reproduce it too in this release

I can't...

What device? Can you get us a tombstone? Or a fully symbolicated stack trace?

@westnordost
Copy link
Collaborator Author

westnordost commented Aug 29, 2024

I don't know how to get a tombstone or a fully symbolicated stack trace.


The crash was already observed with 11.1.0 and observed in conjunction with #2432 (i.e. just after) but also independent of each other (see this comment: streetcomplete/StreetComplete#5850 (comment)). One device with which it had been reproduced was Samsung Galaxy S23+ on Android 14. The other is some Xiaomi device on Android 12.

See streetcomplete/StreetComplete#5829 (comment) :

SC v59.0-alpha1 was in background for several minutes (during which I was in another GPS app), and then SC crashed by itself while in background (I have LogFox which notices/logs crashed and opens a notification/toast).

Trying to restart SC several times just lead to it auto-crashing again, without offering to send logs.
Only when I removed it from recents, did it manage to start again.

The user which can now reliably reproduce the crash on every app start is now in this exact situation.
The crash log attached to linked comment seems to be a bit more complete, maybe that one is more helpful (it was made with 11.1.0).

@westnordost
Copy link
Collaborator Author

(In any case, we have one user who can reliably reproduce this crash on every app start. We could provide him with a modified version of the app which can generate a fully symbolicated strack trace, only I don't know what would need to be done for this.)

@louwers
Copy link
Collaborator

louwers commented Aug 29, 2024

I thought I would be able to recover the last two frames with the debug symbols we publish alongside the release, but I have not had any luck with that.

Android has guides Debug native Android platform code and Diagnose native crashes.

I hope it is not needed to make a custom build. @mnalis Could you try this? https://developer.android.com/studio/debug/bug-report And see if it generates a tombstone?

@louwers louwers changed the title Crash on startup (MapLibre 11.2.0) Crash on startup AndroidRendererFrontend Aug 29, 2024
@mnalis
Copy link

mnalis commented Aug 29, 2024

@louwers actually it is the other user that is currently having issues with new SC v59.0-alpha2 release, I was having the issue with previous alpha1 release, but not (yet) in alpha2.

But as that particular crash looks the same, here is my (Samsung Galaxy S23+, Android 14) example tombstone (made via Developer Options / Bug Report on device) from 27 Aug 2024 (it seems it manages to collect many tombstones from days and even months past!)

Hopefully it helps, or at least give information if special debug build will be required to collect more info...

tombstone.zip

@RubenKelevra
Copy link

What device?

Redmi Note 10 Pro running Android 12

Can you get us a tombstone?

Nope, it's not rooted, so I can't access the tombstone directory.

Or a fully symbolicated stack trace?

How do I do this? Just run the app build with full debug symbols and capture the log?

@RubenKelevra
Copy link

RubenKelevra commented Aug 29, 2024

@westnordost wrote:

only I don't know what would need to be done for this

@westnordost Can you build be version with this line set to false and

ndk {
  debugSymbolLevel = "FULL"
}

added to the block?

@westnordost
Copy link
Collaborator Author

@RubenKelevra
Copy link

RubenKelevra commented Aug 30, 2024

@louwers Here's the crash log:

startup_crash_59-alpha3.log

@louwers
Copy link
Collaborator

louwers commented Aug 30, 2024

Thanks. The last two frames are still not included. Maybe we can try this: https://f-droid.org/docs/Reproducible_Builds/#native-library-stripping

android {
    packagingOptions {
        doNotStrip '**/*.so'
    }
}

Could be that we need to change something on our end.

@louwers
Copy link
Collaborator

louwers commented Aug 30, 2024

I opened a PR https://github.com/maplibre/maplibre-native/pull/2786/files

@westnordost
Copy link
Collaborator Author

Maybe we can try this: https://f-droid.org/docs/Reproducible_Builds/#native-library-stripping

Could try that, but I understand that first the PR you created must be merged and a new maplibre version released , right?

@Helium314
Copy link
Contributor

I got a very similar crash on startup (only once). Release apk without the above changes for debugging, but at least I have root access and thus a tombstone file.

pid: 24029, tid: 24029, name: complete.expert  >>> de.westnordost.streetcomplete.expert <<<
#00 pc 00000000008a971c  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/lib/arm64/libmaplibre.so (BuildId: e5e0141efbb4d8fe68ed6dc77439a5c6a1f6e3da)
#01 pc 00000000008a6484  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/lib/arm64/libmaplibre.so (BuildId: e5e0141efbb4d8fe68ed6dc77439a5c6a1f6e3da)
#02 pc 00000000004a3740  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/lib/arm64/libmaplibre.so (mbgl::android::AndroidRendererFrontend::AndroidRendererFrontend(mbgl::android::MapRenderer&)+96) (BuildId: e5e0141efbb4d8fe68ed6dc77439a5c6a1f6e3da)
#03 pc 00000000004d7b1c  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/lib/arm64/libmaplibre.so (mbgl::android::NativeMapView::NativeMapView(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)+204) (BuildId: e5e0141efbb4d8fe68ed6dc77439a5c6a1f6e3da)
#04 pc 00000000004f6610  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/lib/arm64/libmaplibre.so (_ZN3jni8MakePeerIN4mbgl7android13NativeMapViewEJRKNS_6ObjectIS3_EERKNS4_INS2_10FileSourceEEERKNS4_INS2_11MapRendererEEEfhEEENSt6__ndk110unique_ptrIT_NSG_14default_deleteISI_EEEER7_JNIEnvDpT0_+92) (BuildId: e5e0141efbb4d8fe68ed6dc77439a5c6a1f6e3da)
#05 pc 00000000004ebc20  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/lib/arm64/libmaplibre.so (_ZZNK3jni16NativePeerHelperIN4mbgl7android13NativeMapViewES3_FNSt6__ndk110unique_ptrIS3_NS4_14default_deleteIS3_EEEER7_JNIEnvRKNS_6ObjectIS3_EERKNSB_INS2_10FileSourceEEERKNSB_INS2_11MapRendererEEEfhEE15MakeInitializerERKNS_5FieldIS3_lEEPKcPSN_ENKUlSA_RSC_SW_RSG_RSK_RfRhE_clESA_SW_SW_SX_SY_SZ_S10_+160) (BuildId: e5e0141efbb4d8fe68ed6dc77439a5c6a1f6e3da)
#06 pc 00000000004ebb58  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/lib/arm64/libmaplibre.so (_ZZN3jni17NativeMethodMakerIMZNKS_16NativePeerHelperIN4mbgl7android13NativeMapViewES4_FNSt6__ndk110unique_ptrIS4_NS5_14default_deleteIS4_EEEER7_JNIEnvRKNS_6ObjectIS4_EERKNSC_INS3_10FileSourceEEERKNSC_INS3_11MapRendererEEEfhEE15MakeInitializerERKNS_5FieldIS4_lEEPKcPSO_EUlSB_RSD_SX_RSH_RSL_RfRhE_KFvSB_SX_SX_SY_SZ_S10_S11_EJEEclIS12_EEDaSV_RKT_ENUlPSA_PNS_7jobjectES1C_S1C_S1C_fhE_8__invokeES1A_S1C_S1C_S1C_S1C_fh+92) (BuildId: e5e0141efbb4d8fe68ed6dc77439a5c6a1f6e3da)
#07 pc 00000000004ebd8c  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/lib/arm64/libmaplibre.so (_ZZN3jni16MakeNativeMethodIZNS_17NativeMethodMakerIMZNKS_16NativePeerHelperIN4mbgl7android13NativeMapViewES5_FNSt6__ndk110unique_ptrIS5_NS6_14default_deleteIS5_EEEER7_JNIEnvRKNS_6ObjectIS5_EERKNSD_INS4_10FileSourceEEERKNSD_INS4_11MapRendererEEEfhEE15MakeInitializerERKNS_5FieldIS5_lEEPKcPSP_EUlSC_RSE_SY_RSI_RSM_RfRhE_KFvSC_SY_SY_SZ_S10_S11_S12_EJEEclIS13_EEDaSW_RKT_EUlPSB_PNS_7jobjectES1D_S1D_S1D_fhE_EEDaSW_SW_S1A_PNS6_9enable_ifIXsr3std8is_classIS18_EE5valueEvE4typeEENUlS1B_DpT_E_8__invokeIJS1D_S1D_S1D_S1D_fhEEEDaS1B_S1K_+44) (BuildId: e5e0141efbb4d8fe68ed6dc77439a5c6a1f6e3da)
#08 pc 000000000005dfa0  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/oat/arm64/base.odex (art_jni_trampoline+224)
#15 pc 0000000000cf501a  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/oat/arm64/base.vdex (org.maplibre.android.maps.NativeMapView.<init>+70)
#18 pc 0000000000cf4354  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/oat/arm64/base.vdex (org.maplibre.android.maps.MapView.initialiseDrawingSurface+200)
#21 pc 0000000000cf457c  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/oat/arm64/base.vdex (org.maplibre.android.maps.MapView.initialize+80)
#24 pc 0000000000cf41a0  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/oat/arm64/base.vdex (org.maplibre.android.maps.MapView.<init>+116)
#46 pc 00000000003b3f26  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/oat/arm64/base.vdex (androidx.fragment.app.Fragment.onCreateView+10)
#49 pc 00000000003b5db8  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/oat/arm64/base.vdex (androidx.fragment.app.Fragment.performCreateView+48)
#52 pc 00000000003b0790  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/oat/arm64/base.vdex (androidx.fragment.app.FragmentStateManager.createView+424)
#55 pc 00000000003b0eee  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/oat/arm64/base.vdex (androidx.fragment.app.FragmentStateManager.moveToExpectedState+254)
#58 pc 00000000003b24f4  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/oat/arm64/base.vdex (androidx.fragment.app.FragmentStore.moveToExpectedState+60)
#61 pc 00000000003aee0e  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/oat/arm64/base.vdex (androidx.fragment.app.FragmentManager.moveToState+54)
#64 pc 00000000003ade4e  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/oat/arm64/base.vdex (androidx.fragment.app.FragmentManager.dispatchStateChange+18)
#67 pc 00000000003adee6  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/oat/arm64/base.vdex (androidx.fragment.app.FragmentManager.dispatchViewCreated+2)
#70 pc 00000000003b63e6  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/oat/arm64/base.vdex (androidx.fragment.app.Fragment.performViewCreated+38)
#73 pc 00000000003b0862  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/oat/arm64/base.vdex (androidx.fragment.app.FragmentStateManager.createView+634)
#76 pc 00000000003b0eee  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/oat/arm64/base.vdex (androidx.fragment.app.FragmentStateManager.moveToExpectedState+254)
#79 pc 00000000003b24f4  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/oat/arm64/base.vdex (androidx.fragment.app.FragmentStore.moveToExpectedState+60)
#82 pc 00000000003aee0e  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/oat/arm64/base.vdex (androidx.fragment.app.FragmentManager.moveToState+54)
#85 pc 00000000003ade4e  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/oat/arm64/base.vdex (androidx.fragment.app.FragmentManager.dispatchStateChange+18)
#88 pc 00000000003ad8de  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/oat/arm64/base.vdex (androidx.fragment.app.FragmentManager.dispatchActivityCreated+22)
#91 pc 00000000003a92d0  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/oat/arm64/base.vdex (androidx.fragment.app.FragmentController.dispatchActivityCreated+12)
#94 pc 00000000003a8460  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/oat/arm64/base.vdex (androidx.fragment.app.FragmentActivity.onStart+40)
#97 pc 000000000018a8ac  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/oat/arm64/base.vdex (androidx.appcompat.app.AppCompatActivity.onStart)
#100 pc 0000000000b01f18  /data/app/de.westnordost.streetcomplete.expert-Fid2BvaFPutGCpnu5bKNLw==/oat/arm64/base.vdex (de.westnordost.streetcomplete.screens.MainActivity.onStart)

tombstone_09.zip

@louwers
Copy link
Collaborator

louwers commented Aug 31, 2024

Somehow our build seems to be stripping symbols from the core library. They are also not part of the debug symbols in the tar file part of the release. Need to try to understand what Gradle is doing here and how I can get these symbols…

@louwers
Copy link
Collaborator

louwers commented Sep 4, 2024

bart@Bart-MBP ~ % llvm-addr2line --obj /Users/bart/Downloads/debug-symbols/arm64-v8a/libmaplibre.so 000000000084d40c
/usr/local/lib/android/sdk/ndk/25.1.8937393/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/memory:2655
bart@Bart-MBP ~ % llvm-addr2line --obj /Users/bart/Downloads/debug-symbols/arm64-v8a/libmaplibre.so 000000000084a0e0
/home/runner/work/maplibre-native/maplibre-native/platform/android/src/async_task.cpp:44

This line is YOLO-casting a void* so likely this is what is causing the crash

    RunLoop::Impl* loop = reinterpret_cast<RunLoop::Impl*>(RunLoop::getLoopHandle());

@mnalis
Copy link

mnalis commented Sep 11, 2024

This line is YOLO-casting a void* so likely this is what is causing the crash

So, would adding some debug logging around that place help locate the source of the problem; or is existing information enough to devise a solution/workaround to avoid the crashes?

@RubenKelevra
Copy link

@mnalis from my quick glimpse at the code it should be checked if the return is zero and then waited and retried until it's fully initialized.

Or get loop handle should block with a lock until it can return a good value.

@louwers
Copy link
Collaborator

louwers commented Sep 20, 2024

I didn't manage to trace down how a loop handle could be uninitialized, but I will add some defensive programming and throw an exception instead of crashing when getLoopHandle() returns a null pointer.

@RubenKelevra
Copy link

If I can run some special debug version or something, I'm happy to do so, if that helps. Thanks for the work!

@louwers
Copy link
Collaborator

louwers commented Sep 23, 2024

Maybe the custom thread local implementation is returning a null pointer here.

void* ThreadLocalBase::get() const {
    return pthread_getspecific(reinterpret_cast<const pthread_key_t&>(storage));
}

I replaced it with thread_local here: #2863

Worth a try.

@louwers louwers reopened this Sep 24, 2024
@louwers
Copy link
Collaborator

louwers commented Sep 24, 2024

@RubenKelevra Could you try 11.5.0?

@westnordost
Copy link
Collaborator Author

westnordost commented Sep 26, 2024

Unfortunately, it is not fixed in 11.5.0.

A stack trace for a user using StreetComplete with MapLibre native 11.5.0:

  #00  pc 0x00000000008c0a84  /data/app/~~SdIvaePEny2duyKdRCAqKA==/de.westnordost.streetcomplete--_J0ask-3keMwR68jn7PkA==/split_config.arm64_v8a.apk!libmaplibre.so (BuildId: 71afceb3dbe5e3a2eff90bf0f8680965fb96e736)
  #01  pc 0x00000000008bd7ec  /data/app/~~SdIvaePEny2duyKdRCAqKA==/de.westnordost.streetcomplete--_J0ask-3keMwR68jn7PkA==/split_config.arm64_v8a.apk!libmaplibre.so (BuildId: 71afceb3dbe5e3a2eff90bf0f8680965fb96e736)
  #02  pc 0x00000000004acc6c  /data/app/~~SdIvaePEny2duyKdRCAqKA==/de.westnordost.streetcomplete--_J0ask-3keMwR68jn7PkA==/split_config.arm64_v8a.apk!libmaplibre.so (mbgl::android::AndroidRendererFrontend::AndroidRendererFrontend(mbgl::android::MapRenderer&)+96) (BuildId: 71afceb3dbe5e3a2eff90bf0f8680965fb96e736)
  #03  pc 0x00000000004e2ba8  /data/app/~~SdIvaePEny2duyKdRCAqKA==/de.westnordost.streetcomplete--_J0ask-3keMwR68jn7PkA==/split_config.arm64_v8a.apk!libmaplibre.so (mbgl::android::NativeMapView::NativeMapView(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)+204) (BuildId: 71afceb3dbe5e3a2eff90bf0f8680965fb96e736)
  #04  pc 0x0000000000503dac  /data/app/~~SdIvaePEny2duyKdRCAqKA==/de.westnordost.streetcomplete--_J0ask-3keMwR68jn7PkA==/split_config.arm64_v8a.apk!libmaplibre.so (std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > jni::MakePeer<mbgl::android::NativeMapView, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char>(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)+92) (BuildId: 71afceb3dbe5e3a2eff90bf0f8680965fb96e736)
  #05  pc 0x00000000004f93bc  /data/app/~~SdIvaePEny2duyKdRCAqKA==/de.westnordost.streetcomplete--_J0ask-3keMwR68jn7PkA==/split_config.arm64_v8a.apk!libmaplibre.so (jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)) const::'lambda'(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&)::operator()(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&) const+160) (BuildId: 71afceb3dbe5e3a2eff90bf0f8680965fb96e736)
  #06  pc 0x00000000004f92f4  /data/app/~~SdIvaePEny2duyKdRCAqKA==/de.westnordost.streetcomplete--_J0ask-3keMwR68jn7PkA==/split_config.arm64_v8a.apk!libmaplibre.so (auto jni::NativeMethodMaker<void (jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)) const::'lambda'(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&)::*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&) const>::operator()<jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)) const::'lambda'(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&)>(char const*, jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)) const::'lambda'(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&) const&)::'lambda'(_JNIEnv*, jni::jobject*, jni::jobject*, jni::jobject*, jni::jobject*, float, unsigned char)::__invoke(_JNIEnv*, jni::jobject*, jni::jobject*, jni::jobject*, jni::jobject*, float, unsigned char)+92) (BuildId: 71afceb3dbe5e3a2eff90bf0f8680965fb96e736)
  #07  pc 0x00000000004f9528  /data/app/~~SdIvaePEny2duyKdRCAqKA==/de.westnordost.streetcomplete--_J0ask-3keMwR68jn7PkA==/split_config.arm64_v8a.apk!libmaplibre.so (auto auto jni::MakeNativeMethod<auto jni::NativeMethodMaker<void (jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)) const::'lambda'(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&)::*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&) const>::operator()<jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)) const::'lambda'(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&)>(char const*, jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)) const::'lambda'(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&) const&)::'lambda'(_JNIEnv*, jni::jobject*, jni::jobject*, jni::jobject*, jni::jobject*, float, unsigned char)>(char const*, char const*, jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)) const::'lambda'(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&) const&, std::__ndk1::enable_if<std::is_class<jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)) const::'lambda'(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&)>::value, void>::type*)::'lambda'(_JNIEnv*, auto...)::__invoke<jni::jobject*, jni::jobject*, jni::jobject*, jni::jobject*, float, unsigned char>(_JNIEnv*, auto...)+44) (BuildId: 71afceb3dbe5e3a2eff90bf0f8680965fb96e736)
  #08  pc 0x00000000003736d8  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (art_jni_trampoline+152)

Since StreetComplete with MapLibre has been released publicly last week, I now have insight into some statistics.

  • About 12% of sessions are affected by this crash. Got about 400 crash reports for this error this week.
  • it happens in the foreground (UI thread)
  • it is not device specific, happens on a large range of devices
  • it is not Android version specific, I have crash reports from Android 11 to Android 14 devices

Since this happens a lot, it is curious why this issue hasn't surfaced before with other MapLibre users. StreetComplete must be using some feature that few MapLibre users use or in a way that few MapLibre users do. Users report that clearing the app's data (sometimes) help.
StreetComplete makes heavy use of the offline regions feature, so maybe that's related. Nothing else which might be special usage comes to my mind right now.

@louwers
Copy link
Collaborator

louwers commented Sep 26, 2024

It's the same line as #2779

@RubenKelevra
Copy link

@RubenKelevra Could you try 11.5.0?

So there's a change, as I can start the app and use it like 8 or 9 out of ten startups. But at one startup I still get a crash.

Previously it was 100% crash rate, except with clean app data - then it worked for a day or two and then it started crashing.

My guess was some kind of cleanup process is started if the last cleanup is like 24 hours ago, to check for old downloaded data in the app - or something similar, as the pattern was pretty consistent.

Meaning, that this has not a direct effect on maplibre, but makes some of the maplibre setup processes run slower and triggering this race condition.

Here's my log:

2024-09-26 13:27:59.742 16599-16599 GraphicsEnvironment     pid-16599                            V  ANGLE Developer option for 'de.westnordost.streetcomplete' set to: 'default'
2024-09-26 13:27:59.742 16599-16599 GraphicsEnvironment     pid-16599                            V  The updatable driver is turned off on this device.
2024-09-26 13:27:59.743 16599-16599 ForceDarkHelperStubImpl pid-16599                            I  initialize for de.westnordost.streetcomplete , ForceDarkOrigin
2024-09-26 13:27:59.745 16599-16599 nativeloader            pid-16599                            D  Load libforcedarkimpl.so using system ns (caller=/system/framework/miui-framework.jar): ok
2024-09-26 13:27:59.745 16599-16599 OpenGLRenderer          pid-16599                            D  JNI_OnLoad success
2024-09-26 13:27:59.745 16599-16599 MiuiForceDarkConfig     pid-16599                            I  setConfig density:2.200000, mainRule:0, secondaryRule:0, tertiaryRule:0
2024-09-26 13:27:59.746 16599-16599 NetworkSecurityConfig   pid-16599                            D  No Network Security Config specified, using platform default
2024-09-26 13:27:59.747 16599-16599 NetworkSecurityConfig   pid-16599                            D  No Network Security Config specified, using platform default
2024-09-26 13:27:59.768 16599-16599 .streetcomplet          pid-16599                            W  Accessing hidden field Ljava/util/Collections$SynchronizedCollection;->mutex:Ljava/lang/Object; (max-target-o, reflection, denied)
2024-09-26 13:27:59.768 16599-16599 .streetcomplet          pid-16599                            W  Accessing hidden method Ljava/util/Collections$SynchronizedSet;-><init>(Ljava/util/Set;Ljava/lang/Object;)V (max-target-o, reflection, denied)
2024-09-26 13:27:59.768 16599-16599 .streetcomplet          pid-16599                            W  Accessing hidden method Ljava/util/Collections$SynchronizedCollection;-><init>(Ljava/util/Collection;Ljava/lang/Object;)V (max-target-o, reflection, denied)
2024-09-26 13:27:59.772 16599-16599 WM-PackageManagerHelper pid-16599                            D  Skipping component enablement for androidx.work.impl.background.systemjob.SystemJobService
2024-09-26 13:27:59.772 16599-16599 WM-Schedulers           pid-16599                            D  Created SystemJobScheduler and enabled SystemJobService
2024-09-26 13:27:59.794 16599-16620 Compatibil...geReporter pid-16599                            D  Compat change id reported: 160794467; UID 99910508; state: ENABLED
2024-09-26 13:27:59.810  1755-6382  CompatibilityInfo       system_server                        D  mCompatibilityFlags - 0
2024-09-26 13:27:59.811  1755-6382  CompatibilityInfo       system_server                        D  applicationDensity - 352
2024-09-26 13:27:59.811  1755-6382  CompatibilityInfo       system_server                        D  applicationScale - 1.0
2024-09-26 13:27:59.855  3386-3386  Launcher_U...ateMachine com.miui.home                        D  mResetIdleStateRunnable
2024-09-26 13:27:59.864 16599-16599 System.err              pid-16599                            W  SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
2024-09-26 13:27:59.864 16599-16599 System.err              pid-16599                            W  SLF4J: Defaulting to no-operation (NOP) logger implementation
2024-09-26 13:27:59.864 16599-16599 System.err              pid-16599                            W  SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
2024-09-26 13:27:59.895 16599-16634 nativeloader            pid-16599                            D  Load /data/app/~~oZV3Hx7OeppTltbXgeoc6g==/de.westnordost.streetcomplete-bminPwX-K5PsriwSGu7S1g==/lib/arm64/libmaplibre.so using ns clns-4 from class loader (caller=base.apk!classes3.dex): ok
2024-09-26 13:27:59.903 16599-16599 AppCompatDelegate       pid-16599                            D  Checking for metadata for AppLocalesMetadataHolderService : Service not found
2024-09-26 13:27:59.953 16599-16599 ViewScrollStubImpl      pid-16599                            D  the value of ScrollFrictionRes is: 0.019499999
2024-09-26 13:27:59.958 16599-16599 IS_CTS_MODE             pid-16599                            D  false
2024-09-26 13:27:59.958 16599-16599 MULTI_WIND...CH_ENABLED pid-16599                            D  false
2024-09-26 13:27:59.959 16599-16599 IS_CTS_MODE             pid-16599                            D  false
2024-09-26 13:27:59.959 16599-16599 MULTI_WIND...CH_ENABLED pid-16599                            D  false
2024-09-26 13:27:59.959 16599-16599 IS_CTS_MODE             pid-16599                            D  false
2024-09-26 13:27:59.959 16599-16599 MULTI_WIND...CH_ENABLED pid-16599                            D  false
2024-09-26 13:27:59.962 16599-16599 DecorView[]             pid-16599                            D  getWindowModeFromSystem  windowmode is 1
2024-09-26 13:27:59.985  1755-5170  ServiceManager          system_server                        W  Permission failure: android.permission.HIGH_SAMPLING_RATE_SENSORS from uid=99910508 pid=16599
2024-09-26 13:27:59.989 16599-16623 Preloader               pid-16599                            I  Loaded country boundaries in 0.2s
2024-09-26 13:28:00.001  3363-3363  KeyguardUpdateMonitor   com.android.systemui                 D  received broadcast android.intent.action.TIME_TICK
2024-09-26 13:28:00.012  3363-3363  KeyguardUpdateMonitor   com.android.systemui                 D  handleTimeUpdate
2024-09-26 13:28:00.012  3363-3363  KeyguardUpdateMonitor   com.android.systemui                 D  received broadcast android.intent.action.TIME_TICK
2024-09-26 13:28:00.020  3386-3386  LauncherAnimationRunner com.miui.home                        E  finish: mFinishRunnable.run
2024-09-26 13:28:00.021  2923-2923  MiuiKeyguardWallpaper   com.miui.miwallpaper                 E  live lock wallpaper is null
2024-09-26 13:28:00.026  1755-2171  MiuiFreeFo...ntListener system_server                        W  setMiuiFreeFormTouchExcludeRegion mTouchExcludeRegion = SkRegion((0,0,1080,93))
2024-09-26 13:28:00.030  1755-2171  MiuiFreeFo...ntListener system_server                        W  setMiuiFreeFormTouchExcludeRegion mTouchExcludeRegion = SkRegion((0,0,1080,93))
2024-09-26 13:28:00.033  1755-5107  MiuiFreeFo...ntListener system_server                        W  setMiuiFreeFormTouchExcludeRegion mTouchExcludeRegion = SkRegion((0,0,1080,93))
2024-09-26 13:28:00.036  3363-3363  KeyguardUpdateMonitor   com.android.systemui                 D  handleTimeUpdate
--------- beginning of crash
2024-09-26 13:28:00.039  1755-2171  MiuiFreeFo...ntListener system_server                        W  setMiuiFreeFormTouchExcludeRegion mTouchExcludeRegion = SkRegion((0,0,1080,93))
2024-09-26 13:28:00.073 16599-16599 libc                    pid-16599                            A  Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0xf8 in tid 16599 (.streetcomplete), pid 16599 (.streetcomplete)
2024-09-26 13:28:00.177 16665-16665 crash_dump64            pid-16665                            I  obtaining output fd from tombstoned, type: kDebuggerdTombstoneProto
2024-09-26 13:28:00.180   730-730   tombstoned              tombstoned                           I  received crash request for pid 16599
2024-09-26 13:28:00.181 16665-16665 crash_dump64            pid-16665                            I  performing dump of process 16599 (target tid = 16599)
2024-09-26 13:28:00.189 16665-16665 DEBUG                   pid-16665                            E  failed to read /proc/uptime: Permission denied
2024-09-26 13:28:00.236  1755-2752  MiuiNetworkPolicy       system_server                        I  updateUidState uid = 10133, uidState = 19
2024-09-26 13:28:00.364 16599-16622 Preloader               pid-16599                            I  Loaded features dictionary in 0.5s
2024-09-26 13:28:00.364 16599-16622 Preloader               pid-16599                            I  Preloading data took 0.6s
2024-09-26 13:28:00.437  1998-2829  LOWI-9.0.0.87           lowi-server                          D  [LOWI-Scan] wait_event:Wait done with Cmd 103
2024-09-26 13:28:00.437  1978-1978  cnss-daemon             cnss-daemon                          I  nl80211 response handler invoked
2024-09-26 13:28:00.437  1978-1978  cnss-daemon             cnss-daemon                          I  nl80211_response_handler: cmd 103, vendorID 4980, subcmd 13  received
2024-09-26 13:28:00.437  1998-2829  LOWI-9.0.0.87           lowi-server                          D  [LOWI-Scan] do_listen_events: Rcvd valid Netlink Cmd 0 Err 0
2024-09-26 13:28:00.437  1204-2825  WifiHAL                 android.hardware.wifi@1.0-service    I  event received NL80211_CMD_VENDOR, vendor_id = 0x1374, subcmd = 0xd
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A  *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A  Build fingerprint: 'Redmi/sweet_eea/sweet:12/SKQ1.210908.001/V13.0.16.0.SKFEUXM:user/release-keys'
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A  Revision: '0'
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A  ABI: 'arm64'
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A  Timestamp: 2024-09-26 13:28:00.187647161+0200
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A  Process uptime: 0s
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A  Cmdline: de.westnordost.streetcomplete
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A  pid: 16599, tid: 16599, name: .streetcomplete  >>> de.westnordost.streetcomplete <<<
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A  uid: 99910508
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A  signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0xf8
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A  Cause: null pointer dereference
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A      x0  0000000000000000  x1  0000007fc4728b80  x2  0000007dd415e5c8  x3  ffffffff990bcc89
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A      x4  00080457cd000000  x5  0000000000000000  x6  0000007dd56a6000  x7  0000000000b7d56a
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A      x8  0000000000000000  x9  0000007dd43ba040  x10 0000000000000001  x11 0000000000000001
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A      x12 0000000000000018  x13 0000000066f54540  x14 000366d0919b174a  x15 0000fdee1a7e5ff6
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A      x16 0000007c9f7e4190  x17 0000007db991e884  x18 0000007dd4e82000  x19 b400007ca4863718
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A      x20 b400007d046be420  x21 0000007fc4728bd0  x22 0000007fc4728bd0  x23 0000000000000001
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A      x24 b400007d045a6170  x25 b400007ca4a7d8c0  x26 0000007dd43ba000  x27 b400007d0cb3e2e8
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A      x28 b400007d0cb3e310  x29 0000007fc4728b90
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A      lr  0000007c9f5f5a84  sp  0000007fc4728b90  pc  0000007c9f5f5a84  pst 0000000020000000
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A  backtrace:
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A        #00 pc 00000000008c0a84  /data/app/~~oZV3Hx7OeppTltbXgeoc6g==/de.westnordost.streetcomplete-bminPwX-K5PsriwSGu7S1g==/lib/arm64/libmaplibre.so (BuildId: 71afceb3dbe5e3a2eff90bf0f8680965fb96e736)
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A        #01 pc 00000000008bd7ec  /data/app/~~oZV3Hx7OeppTltbXgeoc6g==/de.westnordost.streetcomplete-bminPwX-K5PsriwSGu7S1g==/lib/arm64/libmaplibre.so (BuildId: 71afceb3dbe5e3a2eff90bf0f8680965fb96e736)
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A        #02 pc 00000000004acc6c  /data/app/~~oZV3Hx7OeppTltbXgeoc6g==/de.westnordost.streetcomplete-bminPwX-K5PsriwSGu7S1g==/lib/arm64/libmaplibre.so (mbgl::android::AndroidRendererFrontend::AndroidRendererFrontend(mbgl::android::MapRenderer&)+96) (BuildId: 71afceb3dbe5e3a2eff90bf0f8680965fb96e736)
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A        #03 pc 00000000004e2ba8  /data/app/~~oZV3Hx7OeppTltbXgeoc6g==/de.westnordost.streetcomplete-bminPwX-K5PsriwSGu7S1g==/lib/arm64/libmaplibre.so (mbgl::android::NativeMapView::NativeMapView(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)+204) (BuildId: 71afceb3dbe5e3a2eff90bf0f8680965fb96e736)
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A        #04 pc 0000000000503dac  /data/app/~~oZV3Hx7OeppTltbXgeoc6g==/de.westnordost.streetcomplete-bminPwX-K5PsriwSGu7S1g==/lib/arm64/libmaplibre.so (std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > jni::MakePeer<mbgl::android::NativeMapView, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char>(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)+92) (BuildId: 71afceb3dbe5e3a2eff90bf0f8680965fb96e736)
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A        #05 pc 00000000004f93bc  /data/app/~~oZV3Hx7OeppTltbXgeoc6g==/de.westnordost.streetcomplete-bminPwX-K5PsriwSGu7S1g==/lib/arm64/libmaplibre.so (jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)) const::'lambda'(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&)::operator()(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&) const+160) (BuildId: 71afceb3dbe5e3a2eff90bf0f8680965fb96e736)
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A        #06 pc 00000000004f92f4  /data/app/~~oZV3Hx7OeppTltbXgeoc6g==/de.westnordost.streetcomplete-bminPwX-K5PsriwSGu7S1g==/lib/arm64/libmaplibre.so (auto jni::NativeMethodMaker<void (jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)) const::'lambda'(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&)::*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&) const>::operator()<jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)) const::'lambda'(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&)>(char const*, jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)) const::'lambda'(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&) const&)::'lambda'(_JNIEnv*, jni::jobject*, jni::jobject*, jni::jobject*, jni::jobject*, float, unsigned char)::__invoke(_JNIEnv*, jni::jobject*, jni::jobject*, jni::jobject*, jni::jobject*, float, unsigned char)+92) (BuildId: 71afceb3dbe5e3a2eff90bf0f8680965fb96e736)
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A        #07 pc 00000000004f9528  /data/app/~~oZV3Hx7OeppTltbXgeoc6g==/de.westnordost.streetcomplete-bminPwX-K5PsriwSGu7S1g==/lib/arm64/libmaplibre.so (auto auto jni::MakeNativeMethod<auto jni::NativeMethodMaker<void (jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)) const::'lambda'(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&)::*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&) const>::operator()<jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)) const::'lambda'(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&)>(char const*, jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (*)(_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)) const::'lambda'(_JNIEnv&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::NativeMapView>&, jni::Object<mbgl::android::FileSource>&, jni::Object<mbgl::android::MapRenderer>&, float&, unsigned char&) const&)::'lambda'(_JNIEnv*, jni::jobject*, jni::jobject*, jni::jobject*, jni::jobject*, float, unsigned char)>(char const*, char const*, jni::NativePeerHelper<mbgl::android::NativeMapView, mbgl::android::NativeMapView, std::__ndk1::unique_ptr<mbgl::android::NativeMapView, std::__ndk1::default_delete<mbgl::android::NativeMapView> > (_JNIEnv&, jni::Object<mbgl::android::NativeMapView> const&, jni::Object<mbgl::android::FileSource> const&, jni::Object<mbgl::android::MapRenderer> const&, float, unsigned char)>::MakeInitializer(jni::Field<mbgl::android::NativeMapView, long> const&, char const*, std::__ndk1::unique_ptr<mbgl::android::Nati
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A
2024-09-26 13:28:00.621 16665-16665 DEBUG                   pid-16665                            A        #08 pc 000000000036f6d8  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (art_jni_trampoline+152)
2024-09-26 13:28:00.634 16665-16665 crash_dump64            pid-16665                            E  cannot open libmiuindbg.so: No such file or directory
2024-09-26 13:28:00.636   730-730   tombstoned              tombstoned                           E  Tombstone written to: tombstone_20
2024-09-26 13:28:00.640  1755-16669 DropBoxManagerService   system_server                        I  add tag=data_app_native_crash isTagEnabled=true flags=0x2
2024-09-26 13:28:00.644  1755-16668 ActivityTaskManager     system_server                        W    Force finishing activity de.westnordost.streetcomplete/.screens.MainActivity
2024-09-26 13:28:00.648  1755-2687  BootReceiver            system_server                        I  Copying /data/tombstones/tombstone_20 to DropBox (SYSTEM_TOMBSTONE)
2024-09-26 13:28:00.648  1755-2687  DropBoxManagerService   system_server                        I  add tag=SYSTEM_TOMBSTONE isTagEnabled=true flags=0x6
2024-09-26 13:28:00.648  1755-16668 MiuiFreeFo...ntListener system_server                        W  setMiuiFreeFormTouchExcludeRegion mTouchExcludeRegion = SkRegion((0,0,1080,93))
2024-09-26 13:28:00.657  1755-16668 ActivityTrigger         system_server                        D  ActivityTrigger activityPauseTrigger
2024-09-26 13:28:00.661  1755-16668 MiuiFreeFo...ntListener system_server                        W  setMiuiFreeFormTouchExcludeRegion mTouchExcludeRegion = SkRegion((0,0,1080,2400))
2024-09-26 13:28:00.665  1755-2687  DropBoxManagerService   system_server                        I  add tag=SYSTEM_TOMBSTONE_PROTO isTagEnabled=true flags=0x4
2024-09-26 13:28:00.665  3363-3363  OneHandedController     com.android.systemui                 D  stopOneHanded state isTransitioning or STATE_NONE
2024-09-26 13:28:00.667  1755-2271  BroadcastQueue          system_server                        W  Background execution not allowed: receiving Intent { act=android.intent.action.DROPBOX_ENTRY_ADDED flg=0x10 (has extras) } to com.google.android.gms/.stats.service.DropBoxEntryAddedReceiver
2024-09-26 13:28:00.667  1755-2271  BroadcastQueue          system_server                        W  Background execution not allowed: receiving Intent { act=android.intent.action.DROPBOX_ENTRY_ADDED flg=0x10 (has extras) } to com.google.android.gms/.stats.service.DropBoxEntryAddedReceiver
2024-09-26 13:28:00.667  3386-3386  EventBus                com.miui.home                        D  No subscribers registered for event class com.miui.home.recents.messages.TaskSnapshotChangedEvent
2024-09-26 13:28:00.668  3386-3386  EventBus                com.miui.home                        D  No subscribers registered for event class org.greenrobot.eventbus.NoSubscriberEvent

@TimSylvester
Copy link
Collaborator

Apparently JNI_OnLoad is called on whatever thread initiated the library load, so if that's not the main thread it could lead to problems, and might explain why it's not happening everywhere.

https://stackoverflow.com/questions/40779502

@louwers
Copy link
Collaborator

louwers commented Oct 4, 2024

@RubenKelevra @westnordost 11.5.1 is now out, which hopefully resolves this problem.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
android bug Something isn't working
Projects
None yet
6 participants