Skip to content

QueueViewController: scrollToItem can be an invalid item leading to a runtime exception

Incident Identifier: 1AC4096A-2FC2-4ECB-8464-342FAA6BAFAD
Hardware Model:      iPhone14,5
Process:             VLC for iOS [759]
Path:                /private/var/containers/Bundle/Application/1100111F-C125-4253-9B55-1B9A253E28BC/VLC for iOS.app/VLC for iOS
Identifier:          org.videolan.vlc-ios
Version:             3.5.9 (626)
AppStoreTools:       15F31e
AppVariant:          1:iPhone14,5:16
Beta:                YES
Code Type:           ARM-64 (Native)
Role:                Foreground
Parent Process:      launchd [1]
Coalition:           org.videolan.vlc-ios [1108]

Date/Time:           2024-06-14 15:30:36.8611 -0700
Launch Time:         2024-06-13 15:24:53.3459 -0700
OS Version:          iPhone OS 16.2 (20C65)
Release Type:        User
Baseband Version:    2.21.00
Report Version:      104

Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Triggered by Thread:  0

Last Exception Backtrace:
0   CoreFoundation                	0x1ba329e48 __exceptionPreprocess + 164 (NSException.m:202)
1   libobjc.A.dylib               	0x1b35fb8d8 objc_exception_throw + 60 (objc-exception.mm:356)
2   Foundation                    	0x1b4bea94c -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 188 (NSException.m:242)
3   UIKitCore                     	0x1bc8e109c -[UICollectionView _validateScrollingTargetIndexPath:] + 412 (UICollectionView.m:0)
4   UIKitCore                     	0x1bc8e0878 -[UICollectionView _contentOffsetForScrollingToItemAtIndexPath:atScrollPosition:] + 52 (UICollectionView.m:7358)
5   UIKitCore                     	0x1bc8e0294 -[UICollectionView _scrollToItemAtIndexPath:atScrollPosition:animated:] + 240 (UICollectionView.m:7573)
6   VLC for iOS                   	0x10271cb04 QueueViewController.viewDidAppear(_:) + 720 (QueueViewController.swift:243)
7   VLC for iOS                   	0x10271cb88 @objc QueueViewController.viewDidAppear(_:) + 40 (<compiler-generated>:0)
8   UIKitCore                     	0x1bc50228c -[UIViewController _setViewAppearState:isAnimating:] + 1148 (UIViewController.m:5828)
9   UIKitCore                     	0x1bc71a6e4 -[UIViewController __viewDidAppear:] + 164 (UIViewController.m:6053)
10  UIKitCore                     	0x1bc71a5c4 __64-[UIViewController viewDidMoveToWindow:shouldAppearOrDisappear:]_block_invoke + 44 (UIViewController.m:6473)
11  UIKitCore                     	0x1bc698ab0 -[UIViewController _executeAfterAppearanceBlock] + 84 (UIViewController.m:6242)
12  UIKitCore                     	0x1bc6989f4 -[_UIAfterCACommitBlock run] + 72 (_UIAfterCACommitQueue.m:137)
13  UIKitCore                     	0x1bc698928 -[_UIAfterCACommitQueue flush] + 176 (_UIAfterCACommitQueue.m:228)
14  UIKitCore                     	0x1bc698834 _runAfterCACommitDeferredBlocks + 496 (UIApplication.m:3230)
15  UIKitCore                     	0x1bc533da0 _cleanUpAfterCAFlushAndRunDeferredBlocks + 108 (UIApplication.m:3194)
16  UIKitCore                     	0x1bc9f90b4 _UIApplicationFlushCATransaction + 72 (UIApplication.m:3271)
17  UIKitCore                     	0x1bcb47498 _UIUpdateSequenceRun + 84 (_UIUpdateSequence.mm:112)
18  UIKitCore                     	0x1bd193410 schedulerStepScheduledMainSection + 172 (_UIUpdateScheduler.m:987)
19  UIKitCore                     	0x1bd1925dc runloopSourceCallback + 92 (_UIUpdateScheduler.m:1079)
20  CoreFoundation                	0x1ba3f5f34 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 28 (CFRunLoop.c:1957)
21  CoreFoundation                	0x1ba40230c __CFRunLoopDoSource0 + 176 (CFRunLoop.c:2001)
22  CoreFoundation                	0x1ba3861d0 __CFRunLoopDoSources0 + 244 (CFRunLoop.c:2038)
23  CoreFoundation                	0x1ba39bb8c __CFRunLoopRun + 836 (CFRunLoop.c:2953)
24  CoreFoundation                	0x1ba3a0ec0 CFRunLoopRunSpecific + 612 (CFRunLoop.c:3418)
25  GraphicsServices              	0x1f43f7368 GSEventRunModal + 164 (GSEvent.c:2196)
26  UIKitCore                     	0x1bc89686c -[UIApplication _run] + 888 (UIApplication.m:3754)
27  UIKitCore                     	0x1bc8964d0 UIApplicationMain + 340 (UIApplication.m:5344)
28  VLC for iOS                   	0x1025fc340 main + 88 (main.m:20)
29  dyld                          	0x103485960 0x103470000 + 88416

Thread 0 Crashed:
0   libsystem_kernel.dylib        	0x00000001f7c9b160 __pthread_kill + 8 (:-1)
1   libsystem_pthread.dylib       	0x00000002083b81ac pthread_kill + 268 (pthread.c:1670)
2   libsystem_c.dylib             	0x00000001c19a0c8c abort + 180 (abort.c:118)
3   libc++abi.dylib               	0x00000002082f7b8c abort_message + 132 (abort_message.cpp:78)
4   libc++abi.dylib               	0x00000002082e7a80 demangling_terminate_handler() + 336 (cxa_default_handlers.cpp:71)
5   libobjc.A.dylib               	0x00000001b3601d3c _objc_terminate() + 144 (objc-exception.mm:498)
6   libc++abi.dylib               	0x00000002082f6f28 std::__terminate(void (*)()) + 20 (cxa_handlers.cpp:59)
7   libc++abi.dylib               	0x00000002082f9ecc __cxa_rethrow + 148 (cxa_exception.cpp:616)
8   libobjc.A.dylib               	0x00000001b35fd6b4 objc_exception_rethrow + 44 (objc-exception.mm:401)
9   CoreFoundation                	0x00000001ba3a0f84 CFRunLoopRunSpecific + 808 (CFRunLoop.c:3434)
10  GraphicsServices              	0x00000001f43f7368 GSEventRunModal + 164 (GSEvent.c:2196)
11  UIKitCore                     	0x00000001bc89686c -[UIApplication _run] + 888 (UIApplication.m:3754)
12  UIKitCore                     	0x00000001bc8964d0 UIApplicationMain + 340 (UIApplication.m:5344)
13  VLC for iOS                   	0x00000001025fc340 main + 88 (main.m:20)
14  dyld                          	0x0000000103485960 0x103470000 + 88416

Thread 1:
0   libsystem_kernel.dylib        	0x00000001f7c94aa8 mach_msg2_trap + 8 (:-1)
1   libsystem_kernel.dylib        	0x00000001f7ca6fc4 mach_msg2_internal + 80 (mach_msg.c:201)
2   libsystem_kernel.dylib        	0x00000001f7ca7204 mach_msg_overwrite + 388 (mach_msg.c:0)
3   libsystem_kernel.dylib        	0x00000001f7c94fec mach_msg + 24 (mach_msg.c:323)
4   CoreFoundation                	0x00000001ba39aad4 __CFRunLoopServiceMachPort + 160 (CFRunLoop.c:2622)
5   CoreFoundation                	0x00000001ba39bd18 __CFRunLoopRun + 1232 (CFRunLoop.c:3005)
6   CoreFoundation                	0x00000001ba3a0ec0 CFRunLoopRunSpecific + 612 (CFRunLoop.c:3418)
7   Foundation                    	0x00000001b46e70d4 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 212 (NSRunLoop.m:373)
8   Foundation                    	0x00000001b46e6fbc -[NSRunLoop(NSRunLoop) runUntilDate:] + 64 (NSRunLoop.m:420)
9   UIKitCore                     	0x00000001bc9cb72c -[UIEventFetcher threadMain] + 436 (UIEventFetcher.m:1385)
10  Foundation                    	0x00000001b47005a8 __NSThread__start__ + 716 (NSThread.m:963)
11  libsystem_pthread.dylib       	0x00000002083b26cc _pthread_start + 148 (pthread.c:893)
12  libsystem_pthread.dylib       	0x00000002083b1ba4 thread_start + 8 (:-1)

Thread 2:
0   libsystem_kernel.dylib        	0x00000001f7c9537c __psynch_cvwait + 8 (:-1)
1   libsystem_pthread.dylib       	0x00000002083b906c _pthread_cond_wait + 1232 (pthread_cond.c:636)
2   libc++.1.dylib                	0x00000001c89b5acc std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 28 (__threading_support:380)
3   VLCMediaLibraryKit            	0x0000000103b0fdd0 void std::__1::condition_variable::wait<medialibrary::ModificationNotifier::run()::$_1>(std::__1::unique_lock<std::__1::mutex>&, medialibrary::ModificationNotifier::run()::$_1) + 28 (__mutex_base:404)
4   VLCMediaLibraryKit            	0x0000000103b0fdd0 medialibrary::ModificationNotifier::run() + 1668 (ModificationsNotifier.cpp:252)
5   VLCMediaLibraryKit            	0x0000000103b14fec decltype(*static_cast<medialibrary::ModificationNotifier*>(fp0).*fp()) std::__1::__invoke<void (medialibrary::ModificationNotifier::*)(), medialibrary::ModificationNotifier*, void>(void (medialibra... + 24 (type_traits:3859)
6   VLCMediaLibraryKit            	0x0000000103b14fec void std::__1::__thread_execute<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (medialibrary::ModificationNotifier::*)(), medialibrary::M... + 28 (thread:287)
7   VLCMediaLibraryKit            	0x0000000103b14fec void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (medialibrary::ModificationNotifier::*)(), ... + 64 (thread:298)
8   libsystem_pthread.dylib       	0x00000002083b26cc _pthread_start + 148 (pthread.c:893)
9   libsystem_pthread.dylib       	0x00000002083b1ba4 thread_start + 8 (:-1)

Thread 3:
0   libsystem_kernel.dylib        	0x00000001f7c9537c __psynch_cvwait + 8 (:-1)
1   libsystem_pthread.dylib       	0x00000002083b906c _pthread_cond_wait + 1232 (pthread_cond.c:636)
2   libc++.1.dylib                	0x00000001c89b5acc std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 28 (__threading_support:380)
3   VLCMediaLibraryKit            	0x0000000103acb744 void std::__1::condition_variable::wait<medialibrary::DiscovererWorker::run()::$_2>(std::__1::unique_lock<std::__1::mutex>&, medialibrary::DiscovererWorker::run()::$_2) + 28 (__mutex_base:404)
4   VLCMediaLibraryKit            	0x0000000103acb744 medialibrary::DiscovererWorker::run() + 344 (DiscovererWorker.cpp:445)
5   VLCMediaLibraryKit            	0x0000000103acd504 decltype(*static_cast<medialibrary::DiscovererWorker*>(fp0).*fp()) std::__1::__invoke<void (medialibrary::DiscovererWorker::*)(), medialibrary::DiscovererWorker*, void>(void (medialibrary::Discover... + 24 (type_traits:3859)
6   VLCMediaLibraryKit            	0x0000000103acd504 void std::__1::__thread_execute<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (medialibrary::DiscovererWorker::*)(), medialibrary::Disco... + 28 (thread:287)
7   VLCMediaLibraryKit            	0x0000000103acd504 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (medialibrary::DiscovererWorker::*)(), medi... + 64 (thread:298)
8   libsystem_pthread.dylib       	0x00000002083b26cc _pthread_start + 148 (pthread.c:893)
9   libsystem_pthread.dylib       	0x00000002083b1ba4 thread_start + 8 (:-1)

Thread 4:
0   libsystem_kernel.dylib        	0x00000001f7c9537c __psynch_cvwait + 8 (:-1)
1   libsystem_pthread.dylib       	0x00000002083b906c _pthread_cond_wait + 1232 (pthread_cond.c:636)
2   MobileVLCKit                  	0x0000000105809934 worker_thread + 68 (media_player.c:1212)
3   libsystem_pthread.dylib       	0x00000002083b1ba4 thread_start + 8 (:-1)

Thread 5:
0   libsystem_kernel.dylib        	0x00000001f7c9560c select$DARWIN_EXTSN + 8 (:-1)
1   CoreFoundation                	0x00000001ba3eb6a4 __CFSocketManager + 636 (CFSocket.c:1340)
2   libsystem_pthread.dylib       	0x00000002083b26cc _pthread_start + 148 (pthread.c:893)
3   libsystem_pthread.dylib       	0x00000002083b1ba4 thread_start + 8 (:-1)

Thread 6:
0   libsystem_kernel.dylib        	0x00000001f7c9537c __psynch_cvwait + 8 (:-1)
1   libsystem_pthread.dylib       	0x00000002083b906c _pthread_cond_wait + 1232 (pthread_cond.c:636)
2   MobileVLCKit                  	0x0000000105809934 worker_thread + 68 (media_player.c:1212)
3   libsystem_pthread.dylib       	0x00000002083b1ba4 thread_start + 8 (:-1)

Thread 7:
0   libsystem_kernel.dylib        	0x00000001f7c9537c __psynch_cvwait + 8 (:-1)
1   libsystem_pthread.dylib       	0x00000002083b906c _pthread_cond_wait + 1232 (pthread_cond.c:636)
2   MobileVLCKit                  	0x0000000105809934 worker_thread + 68 (media_player.c:1212)
3   libsystem_pthread.dylib       	0x00000002083b1ba4 thread_start + 8 (:-1)

Thread 8:
0   libsystem_pthread.dylib       	0x00000002083b1b90 start_wqthread + 0 (:-1)

Thread 9:
0   libsystem_pthread.dylib       	0x00000002083b1b90 start_wqthread + 0 (:-1)

Thread 10:
0   libsystem_pthread.dylib       	0x00000002083b1b90 start_wqthread + 0 (:-1)

Thread 11:
0   libsystem_pthread.dylib       	0x00000002083b1b90 start_wqthread + 0 (:-1)

Thread 12:
0   libsystem_pthread.dylib       	0x00000002083b1b90 start_wqthread + 0 (:-1)

Thread 13:
0   libsystem_kernel.dylib        	0x00000001f7c9537c __psynch_cvwait + 8 (:-1)
1   libsystem_pthread.dylib       	0x00000002083b906c _pthread_cond_wait + 1232 (pthread_cond.c:636)
2   MobileVLCKit                  	0x0000000105809934 worker_thread + 68 (media_player.c:1212)
3   libsystem_pthread.dylib       	0x00000002083b1ba4 thread_start + 8 (:-1)

Thread 14:
0   libsystem_kernel.dylib        	0x00000001f7c9537c __psynch_cvwait + 8 (:-1)
1   libsystem_pthread.dylib       	0x00000002083b906c _pthread_cond_wait + 1232 (pthread_cond.c:636)
2   MobileVLCKit                  	0x000000010580e038 playlist_thread + 88 (media_list_player.c:346)
3   libsystem_pthread.dylib       	0x00000002083b1ba4 thread_start + 8 (:-1)

Thread 15:
0   libsystem_kernel.dylib        	0x00000001f7c9537c __psynch_cvwait + 8 (:-1)
1   libsystem_pthread.dylib       	0x00000002083b9098 _pthread_cond_wait + 1276 (pthread_cond.c:640)
2   MobileVLCKit                  	0x00000001058829c0 vlc_cond_timedwait + 164 (thread.c:291)
3   libsystem_pthread.dylib       	0x00000002083b1ba4 thread_start + 8 (:-1)

Thread 16:
0   libsystem_kernel.dylib        	0x00000001f7c9537c __psynch_cvwait + 8 (:-1)
1   libsystem_pthread.dylib       	0x00000002083b9098 _pthread_cond_wait + 1276 (pthread_cond.c:640)
2   MobileVLCKit                  	0x00000001058829c0 vlc_cond_timedwait + 164 (thread.c:291)
3   libsystem_pthread.dylib       	0x00000002083b1ba4 thread_start + 8 (:-1)

Thread 17:
0   libsystem_kernel.dylib        	0x00000001f7c9537c __psynch_cvwait + 8 (:-1)
1   libsystem_pthread.dylib       	0x00000002083b9098 _pthread_cond_wait + 1276 (pthread_cond.c:640)
2   MobileVLCKit                  	0x00000001058829c0 vlc_cond_timedwait + 164 (thread.c:291)
3   libsystem_pthread.dylib       	0x00000002083b1ba4 thread_start + 8 (:-1)

Thread 18:
0   libsystem_kernel.dylib        	0x00000001f7c9537c __psynch_cvwait + 8 (:-1)
1   libsystem_pthread.dylib       	0x00000002083b906c _pthread_cond_wait + 1232 (pthread_cond.c:636)
2   MobileVLCKit                  	0x00000001058356fc DecoderThread + 552 (decoder.c:0)
3   libsystem_pthread.dylib       	0x00000002083b1ba4 thread_start + 8 (:-1)

Thread 19:
0   libsystem_pthread.dylib       	0x00000002083b1b90 start_wqthread + 0 (:-1)

Thread 20:
0   libsystem_pthread.dylib       	0x00000002083b1b90 start_wqthread + 0 (:-1)

Thread 21:
0   libsystem_kernel.dylib        	0x00000001f7c94aa8 mach_msg2_trap + 8 (:-1)
1   libsystem_kernel.dylib        	0x00000001f7ca6fc4 mach_msg2_internal + 80 (mach_msg.c:201)
2   libsystem_kernel.dylib        	0x00000001f7ca7204 mach_msg_overwrite + 388 (mach_msg.c:0)
3   libsystem_kernel.dylib        	0x00000001f7c94fec mach_msg + 24 (mach_msg.c:323)
4   libEmbeddedSystemAUs.dylib    	0x000000022208c24c void* caulk::thread_proxy<std::__1::tuple<caulk::thread::attributes, AURemoteIO::IOThread::IOThread(AURemoteIO&, caulk::thread::attributes const&, caulk::mach::os_workgroup_managed const&)::'lambda... + 556 (AURemoteIO.cpp:2051)
5   libsystem_pthread.dylib       	0x00000002083b26cc _pthread_start + 148 (pthread.c:893)
6   libsystem_pthread.dylib       	0x00000002083b1ba4 thread_start + 8 (:-1)

Thread 22:
0   libsystem_pthread.dylib       	0x00000002083b1b90 start_wqthread + 0 (:-1)

Thread 0 crashed with ARM Thread State (64-bit):
    x0: 0x0000000000000000   x1: 0x0000000000000000   x2: 0x0000000000000000   x3: 0x0000000000000000
    x4: 0x00000002082fb0f5   x5: 0x000000016d813050   x6: 0x000000000000006e   x7: 0xffffffff00006f00
    x8: 0xde650b99002fec4c   x9: 0xde650b98037ff24c  x10: 0x0000000000000200  x11: 0x000000000000000b
   x12: 0x000000000000000b  x13: 0x00000000001ff800  x14: 0x00000000000007fb  x15: 0x00000000f8228035
   x16: 0x0000000000000148  x17: 0x0000000103501e00  x18: 0x0000000000000000  x19: 0x0000000000000006
   x20: 0x0000000000000103  x21: 0x0000000103501ee0  x22: 0x0000000211c8d040  x23: 0x00000002821f17a0
   x24: 0x0000000000000001  x25: 0x0000000000000001  x26: 0x0000000000000001  x27: 0x0000000000000000
   x28: 0x00000001db4e5880   fp: 0x000000016d812fc0   lr: 0x00000002083b81ac
    sp: 0x000000016d812fa0   pc: 0x00000001f7c9b160 cpsr: 0x40001000
   esr: 0x56000080  Address size fault


Binary Images:
        0x1025ec000 -         0x102ea7fff VLC for iOS arm64  <76d7c6aef69e33e1813f0c39c3f10a1d> /private/var/containers/Bundle/Application/1100111F-C125-4253-9B55-1B9A253E28BC/VLC for iOS.app/VLC for iOS
        0x103470000 -         0x1034f3fff dyld arm64e  <444f50414d494e45444f50414d494e45> /usr/lib/dyld
        0x1039cc000 -         0x103d13fff VLCMediaLibraryKit arm64  <fdafc1ce133038499a843d23dc48a170> /private/var/containers/Bundle/Application/1100111F-C125-4253-9B55-1B9A253E28BC/VLC for iOS.app/Frameworks/VLCMediaLibraryKit.framework/VLCMediaLibraryKit
        0x1057e4000 -         0x10749bfff MobileVLCKit arm64  <4cce0db711623b86abc46c323ea13981> /private/var/containers/Bundle/Application/1100111F-C125-4253-9B55-1B9A253E28BC/VLC for iOS.app/Frameworks/MobileVLCKit.framework/MobileVLCKit
        0x1b35e4000 -         0x1b3627e1f libobjc.A.dylib arm64e  <d6ecfb730ca23a21a3a919e450d3b49c> /usr/lib/libobjc.A.dylib
        0x1b46a5000 -         0x1b4feefff Foundation arm64e  <07a92f05d8ec327eab3341db9f77ba16> /System/Library/Frameworks/Foundation.framework/Foundation
        0x1ba320000 -         0x1ba705fff CoreFoundation arm64e  <725e49f4653b39bf9a7a8a3250911ecb> /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation
        0x1bc4f5000 -         0x1bdce0fff UIKitCore arm64e  <59cbc9b530ae396ea269a986640001bc> /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore
        0x1c1980000 -         0x1c19ffff7 libsystem_c.dylib arm64e  <f088d98df2a13452996f9e6bb5139f52> /usr/lib/system/libsystem_c.dylib
        0x1c89a9000 -         0x1c8a0fff3 libc++.1.dylib arm64e  <de2904c7378034208fb85ccab1e3382f> /usr/lib/libc++.1.dylib
        0x1f43f6000 -         0x1f43fefff GraphicsServices arm64e  <5adda888f38735f787a7e01fcb9bb928> /System/Library/PrivateFrameworks/GraphicsServices.framework/GraphicsServices
        0x1f7c90000 -         0x1f7ccafe3 libsystem_kernel.dylib arm64e  <9daa5c2993e03768a3e1e139995dc4af> /usr/lib/system/libsystem_kernel.dylib
        0x2082e6000 -         0x2082fdffb libc++abi.dylib arm64e  <a0028fdf20f43a76a43df0fa725bee9f> /usr/lib/libc++abi.dylib
        0x2083b1000 -         0x2083bcfff libsystem_pthread.dylib arm64e  <f2ba7ec0f75a3345b4f6f7da4979b902> /usr/lib/system/libsystem_pthread.dylib
        0x221fe4000 -         0x2220efff3 libEmbeddedSystemAUs.dylib arm64e  <5c8b236dd6da3409b96eda8f4f10d31d> /System/Library/Frameworks/AudioToolbox.framework/libEmbeddedSystemAUs.dylib
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information