Crash when opening a (malformed?) playlist file from VLC for Android
When opening a particular playlist, the app crashes.
Reproduction from VLC for Android:
- unzip playlists.zip in your internal memory
- go to the "Browse" screen
- navigate to the folder you copied it to and open the
./playlist_files/bracket_playlist.m3u
file
The app crashes with this stack:
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: Build fingerprint: 'google/sargo/sargo:12/S2B2.211203.006/8015633:user/release-keys'
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: Revision: 'MP1.0'
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: ABI: 'arm64'
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: Timestamp: 2022-01-14 08:38:55.174238450+0100
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: Process uptime: 0s
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: Cmdline: org.videolan.vlc.debug
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: pid: 2935, tid: 2998, name: DefaultDispatch >>> org.videolan.vlc.debug <<<
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: uid: 10395
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: Abort message: '../src/File.cpp:198: std::shared_ptr<Media> medialibrary::File::media() const: assertion "m_type != IFile::Type::Playlist" failed'
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: x0 0000000000000000 x1 0000000000000bb6 x2 0000000000000006 x3 0000007853a3dcb0
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: x4 0080808080808080 x5 0080808080808080 x6 0080808080808080 x7 8080808080808000
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: x8 00000000000000f0 x9 43ea7a0ae7eed488 x10 0000000000000000 x11 ffffff80fffffbdf
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: x12 0000000000000001 x13 0000000000000018 x14 0000014e7625df5c x15 0000000000000050
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: x16 0000007b84587050 x17 0000007b84563db0 x18 0000007852d5c000 x19 0000000000000b77
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: x20 0000000000000bb6 x21 00000000ffffffff x22 0000007865682368 x23 0000000000002070
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: x24 00000078d6800880 x25 0000007853a3e0c0 x26 0000007853a3e0d4 x27 0000007853a3e0c0
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: x28 0000007853a3dfc0 x29 0000007853a3dd30
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: lr 0000007b84516aa0 sp 0000007853a3dc90 pc 0000007b84516acc pst 0000000000000000
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: backtrace:
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #00 pc 000000000004facc /apex/com.android.runtime/lib64/bionic/libc.so (abort+164) (BuildId: b2e84269f59e7b1658e3a470fd302458)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #01 pc 000000000004fe70 /apex/com.android.runtime/lib64/bionic/libc.so (__assert2+36) (BuildId: b2e84269f59e7b1658e3a470fd302458)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #02 pc 00000000004e4a38 /data/app/~~7dwnnFkC0LppQckOqv_sUw==/org.videolan.vlc.debug-mEUIjgPh6zFwI6UupwpTjg==/lib/arm64/libmla.so (medialibrary::File::media() const+80) (BuildId: 8db3f0827a5ab849198ae46713d3ce3b0bcbe230)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #03 pc 0000000000281468 /data/app/~~7dwnnFkC0LppQckOqv_sUw==/org.videolan.vlc.debug-mEUIjgPh6zFwI6UupwpTjg==/lib/arm64/libmla.so (medialibrary::MediaLibrary::media(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&) const+472) (BuildId: 8db3f0827a5ab849198ae46713d3ce3b0bcbe230)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #04 pc 0000000000265fe8 /data/app/~~7dwnnFkC0LppQckOqv_sUw==/org.videolan.vlc.debug-mEUIjgPh6zFwI6UupwpTjg==/lib/arm64/libmla.so (AndroidMediaLibrary::media(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&)+48) (BuildId: 8db3f0827a5ab849198ae46713d3ce3b0bcbe230)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #05 pc 000000000024cca0 /data/app/~~7dwnnFkC0LppQckOqv_sUw==/org.videolan.vlc.debug-mEUIjgPh6zFwI6UupwpTjg==/lib/arm64/libmla.so (getMediaFromMrl(_JNIEnv*, _jobject*, _jstring*)+120) (BuildId: 8db3f0827a5ab849198ae46713d3ce3b0bcbe230)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #06 pc 00000000002d7644 /apex/com.android.art/lib64/libart.so (art_quick_generic_jni_trampoline+148) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #07 pc 000000000020a0a0 /apex/com.android.art/lib64/libart.so (nterp_helper+4016) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #08 pc 00000000001bd368 [anon:dalvik-classes3.dex extracted in memory from /data/app/~~7dwnnFkC0LppQckOqv_sUw==/org.videolan.vlc.debug-mEUIjgPh6zFwI6UupwpTjg==/base.apk!classes3.dex] (org.videolan.medialibrary.MedialibraryImpl.getMedia+64)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #09 pc 000000000020a044 /apex/com.android.art/lib64/libart.so (nterp_helper+3924) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #10 pc 00000000001bd298 [anon:dalvik-classes3.dex extracted in memory from /data/app/~~7dwnnFkC0LppQckOqv_sUw==/org.videolan.vlc.debug-mEUIjgPh6zFwI6UupwpTjg==/base.apk!classes3.dex] (org.videolan.medialibrary.MedialibraryImpl.findMedia+40)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #11 pc 000000000020a044 /apex/com.android.art/lib64/libart.so (nterp_helper+3924) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #12 pc 0000000000241870 [anon:dalvik-classes3.dex extracted in memory from /data/app/~~7dwnnFkC0LppQckOqv_sUw==/org.videolan.vlc.debug-mEUIjgPh6zFwI6UupwpTjg==/base.apk!classes3.dex] (org.videolan.vlc.PlaybackService$updateMetadataInternal$bob$1$invokeSuspend$$inlined$getFromMl$1.invokeSuspend+156)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #13 pc 000000000020a044 /apex/com.android.art/lib64/libart.so (nterp_helper+3924) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #14 pc 00000000000a03e4 [anon:dalvik-classes.dex extracted in memory from /data/app/~~7dwnnFkC0LppQckOqv_sUw==/org.videolan.vlc.debug-mEUIjgPh6zFwI6UupwpTjg==/base.apk] (kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith+40)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #15 pc 0000000002100490 /memfd:jit-cache (deleted) (kotlinx.coroutines.DispatchedTask.run+1824)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #16 pc 000000000020a0a0 /apex/com.android.art/lib64/libart.so (nterp_helper+4016) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #17 pc 0000000000172db2 [anon:dalvik-classes3.dex extracted in memory from /data/app/~~7dwnnFkC0LppQckOqv_sUw==/org.videolan.vlc.debug-mEUIjgPh6zFwI6UupwpTjg==/base.apk!classes3.dex] (kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely+2)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #18 pc 000000000020a044 /apex/com.android.art/lib64/libart.so (nterp_helper+3924) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #19 pc 00000000001719de [anon:dalvik-classes3.dex extracted in memory from /data/app/~~7dwnnFkC0LppQckOqv_sUw==/org.videolan.vlc.debug-mEUIjgPh6zFwI6UupwpTjg==/base.apk!classes3.dex] (kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask+34)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #20 pc 000000000020a044 /apex/com.android.art/lib64/libart.so (nterp_helper+3924) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #21 pc 0000000000171b10 [anon:dalvik-classes3.dex extracted in memory from /data/app/~~7dwnnFkC0LppQckOqv_sUw==/org.videolan.vlc.debug-mEUIjgPh6zFwI6UupwpTjg==/base.apk!classes3.dex] (kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker+56)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #22 pc 000000000020a044 /apex/com.android.art/lib64/libart.so (nterp_helper+3924) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #23 pc 0000000000171ac0 [anon:dalvik-classes3.dex extracted in memory from /data/app/~~7dwnnFkC0LppQckOqv_sUw==/org.videolan.vlc.debug-mEUIjgPh6zFwI6UupwpTjg==/base.apk!classes3.dex] (kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run+0)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #24 pc 00000000002cdd64 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+548) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #25 pc 0000000000317fb0 /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+156) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #26 pc 00000000003cc480 /apex/com.android.art/lib64/libart.so (art::JValue art::InvokeVirtualOrInterfaceWithJValues<art::ArtMethod*>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, art::ArtMethod*, jvalue const*)+380) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #27 pc 000000000045efd8 /apex/com.android.art/lib64/libart.so (art::Thread::CreateCallback(void*)+992) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #28 pc 00000000000b1810 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+264) (BuildId: b2e84269f59e7b1658e3a470fd302458)
2022-01-14 08:38:55.542 3660-3660/? A/DEBUG: #29 pc 00000000000512f0 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) (BuildId: b2e84269f59e7b1658e3a470fd302458)
2022-01-14 08:38:55.572 881-881/? E/tombstoned: Tombstone written to: tombstone_04
DB file after the crash: vlc_media.db