SDWebImage: ERROR_CGDataProvider_BufferIsNotReadable Crash

New Issue Checklist

Issue Info

Info Value
Platform Name iOS
Platform Version 11.2.X
SDWebImage Version 4.2.0
Integration Method Cocoapods
Xcode Version Xcode 9
Repro rate sometimes 0.01%

Issue Description and Steps

Our app is getting crash related to ERROR_CGDataProvider_BufferIsNotReadable and it is only happen on iOS 11. We checked some information and found that the collapse was related to image rendering.Any idea how to fix this? Thanks in advance.

Full crash report posted below:
 Date: 2018-02-21T06:48:00Z
 OS Version: 11.2.6 (15D100)
 Device: iPhone 8 Plus
 RAM Free: 2.3%
 Disk Free: 95.2%

#0. Crashed: com.apple.main-thread
0  CoreGraphics                   0x18452259c ERROR_CGDataProvider_BufferIsNotReadable + 12
1  CoreGraphics                   0x1845222c0 CGDataProviderRetainBytePtr + 216
2  QuartzCore                     0x186bf5f84 CA::Render::(anonymous namespace)::create_image_from_image_data(CGImage*, CGColorSpace*, unsigned int, unsigned int, double) + 196
3  QuartzCore                     0x186bf40dc CA::Render::create_image(CGImage*, CGColorSpace*, unsigned int, double) + 900
4  QuartzCore                     0x186bf6d9c CA::Render::copy_image(CGImage*, CGColorSpace*, unsigned int, double, double) + 472
5  QuartzCore                     0x186bf7164 CA::Render::prepare_image(CGImage*, CGColorSpace*, unsigned int, double) + 20
6  QuartzCore                     0x186d06158 CA::Layer::prepare_commit(CA::Transaction*) + 332
7  QuartzCore                     0x186c6840c CA::Context::commit_transaction(CA::Transaction*) + 576
8  QuartzCore                     0x186c8fb40 CA::Transaction::commit() + 540
9  QuartzCore                     0x186c90980 CA::Transaction::observer_callback(__CFRunLoopObserver*, unsigned long, void*) + 92
10 CoreFoundation                 0x182c5acdc __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 32
11 CoreFoundation                 0x182c58694 __CFRunLoopDoObservers + 412
12 CoreFoundation                 0x182c58c50 __CFRunLoopRun + 1292
13 CoreFoundation                 0x182b78c58 CFRunLoopRunSpecific + 436
14 GraphicsServices               0x184a24f84 GSEventRunModal + 100
15 UIKit                          0x18c2d15c4 UIApplicationMain + 236
16 banggood                       0x104ba6160 main (main.m:16)
17 libdyld.dylib                  0x18269856c start + 4

--

#0. Crashed: com.apple.main-thread
0  CoreGraphics                   0x18452259c ERROR_CGDataProvider_BufferIsNotReadable + 12
1  CoreGraphics                   0x1845222c0 CGDataProviderRetainBytePtr + 216
2  QuartzCore                     0x186bf5f84 CA::Render::(anonymous namespace)::create_image_from_image_data(CGImage*, CGColorSpace*, unsigned int, unsigned int, double) + 196
3  QuartzCore                     0x186bf40dc CA::Render::create_image(CGImage*, CGColorSpace*, unsigned int, double) + 900
4  QuartzCore                     0x186bf6d9c CA::Render::copy_image(CGImage*, CGColorSpace*, unsigned int, double, double) + 472
5  QuartzCore                     0x186bf7164 CA::Render::prepare_image(CGImage*, CGColorSpace*, unsigned int, double) + 20
6  QuartzCore                     0x186d06158 CA::Layer::prepare_commit(CA::Transaction*) + 332
7  QuartzCore                     0x186c6840c CA::Context::commit_transaction(CA::Transaction*) + 576
8  QuartzCore                     0x186c8fb40 CA::Transaction::commit() + 540
9  QuartzCore                     0x186c90980 CA::Transaction::observer_callback(__CFRunLoopObserver*, unsigned long, void*) + 92
10 CoreFoundation                 0x182c5acdc __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 32
11 CoreFoundation                 0x182c58694 __CFRunLoopDoObservers + 412
12 CoreFoundation                 0x182c58c50 __CFRunLoopRun + 1292
13 CoreFoundation                 0x182b78c58 CFRunLoopRunSpecific + 436
14 GraphicsServices               0x184a24f84 GSEventRunModal + 100
15 UIKit                          0x18c2d15c4 UIApplicationMain + 236
16 banggood                       0x104ba6160 main (main.m:16)
17 libdyld.dylib                  0x18269856c start + 4

#1. com.apple.root.background-qos
0  libsystem_kernel.dylib         0x1827c860c __semwait_signal + 8
1  libsystem_c.dylib              0x1826e0f70 nanosleep + 212
2  libsystem_c.dylib              0x182749f34 sleep + 44
3  banggood                       0x104d8ca7c __36-[HomeViewController startAutoSwipe]_block_invoke (HomeViewController.m:2063)
4  libdispatch.dylib              0x182632a54 _dispatch_call_block_and_release + 24
5  libdispatch.dylib              0x182632a14 _dispatch_client_callout + 16
6  libdispatch.dylib              0x18267444c _dispatch_root_queue_drain + 992
7  libdispatch.dylib              0x182674008 _dispatch_worker_thread3 + 112
8  libsystem_pthread.dylib        0x1828db06c _pthread_wqthread + 1268
9  libsystem_pthread.dylib        0x1828dab6c start_wqthread + 4

#2. Thread
0  libsystem_kernel.dylib         0x1827c80f0 __psynch_cvwait + 8
1  libsystem_pthread.dylib        0x1828e2f74 _pthread_cond_wait$VARIANT$armv81 + 624
2  libc++.1.dylib                 0x181e7fea4 std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 24
3  JavaScriptCore                 0x18a020f2c void std::__1::condition_variable_any::wait<std::__1::unique_lock<bmalloc::Mutex> >(std::__1::unique_lock<bmalloc::Mutex>&) + 96
4  JavaScriptCore                 0x18a020e54 bmalloc::AsyncTask<bmalloc::Heap, void (bmalloc::Heap::*)()>::threadRunLoop() + 172
5  JavaScriptCore                 0x18a0211b8 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 (*)(bmalloc::AsyncTask<bmalloc::Heap, void (bmalloc::Heap::*)()>*), bmalloc::AsyncTask<bmalloc::Heap, void (bmalloc::Heap::*)()>*> >(void*) + 44
6  libsystem_pthread.dylib        0x1828dc2b4 _pthread_body + 308
7  libsystem_pthread.dylib        0x1828dc180 _pthread_body + 310
8  libsystem_pthread.dylib        0x1828dab74 thread_start + 4

#3. WebThread
0  libsystem_kernel.dylib         0x1827a7568 mach_msg_trap + 8
1  libsystem_kernel.dylib         0x1827a73e0 mach_msg + 72
2  CoreFoundation                 0x182c5b108 __CFRunLoopServiceMachPort + 196
3  CoreFoundation                 0x182c58cd4 __CFRunLoopRun + 1424
4  CoreFoundation                 0x182b78c58 CFRunLoopRunSpecific + 436
5  WebCore                        0x18aaed84c RunWebThread(void*) + 560
6  libsystem_pthread.dylib        0x1828dc2b4 _pthread_body + 308
7  libsystem_pthread.dylib        0x1828dc180 _pthread_body + 310
8  libsystem_pthread.dylib        0x1828dab74 thread_start + 4

#4. com.apple.uikit.eventfetch-thread
0  libsystem_kernel.dylib         0x1827a7568 mach_msg_trap + 8
1  libsystem_kernel.dylib         0x1827a73e0 mach_msg + 72
2  CoreFoundation                 0x182c5b108 __CFRunLoopServiceMachPort + 196
3  CoreFoundation                 0x182c58cd4 __CFRunLoopRun + 1424
4  CoreFoundation                 0x182b78c58 CFRunLoopRunSpecific + 436
5  Foundation                     0x1835ad594 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 304
6  Foundation                     0x1835cc9ac -[NSRunLoop(NSRunLoop) runUntilDate:] + 96
7  UIKit                          0x18ce3b7a8 -[UIEventFetcher threadMain] + 136
8  Foundation                     0x1836af0f4 __NSThread__start__ + 996
9  libsystem_pthread.dylib        0x1828dc2b4 _pthread_body + 308
10 libsystem_pthread.dylib        0x1828dc180 _pthread_body + 310
11 libsystem_pthread.dylib        0x1828dab74 thread_start + 4

#5. com.apple.NSURLConnectionLoader
0  libsystem_kernel.dylib         0x1827a7568 mach_msg_trap + 8
1  libsystem_kernel.dylib         0x1827a73e0 mach_msg + 72
2  CoreFoundation                 0x182c5b108 __CFRunLoopServiceMachPort + 196
3  CoreFoundation                 0x182c58cd4 __CFRunLoopRun + 1424
4  CoreFoundation                 0x182b78c58 CFRunLoopRunSpecific + 436
5  CFNetwork                      0x183467b08 -[__CoreSchedulingSetRunnable runForever] + 780
6  Foundation                     0x1836af0f4 __NSThread__start__ + 996
7  libsystem_pthread.dylib        0x1828dc2b4 _pthread_body + 308
8  libsystem_pthread.dylib        0x1828dc180 _pthread_body + 310
9  libsystem_pthread.dylib        0x1828dab74 thread_start + 4

#6. GAIThread
0  libsystem_kernel.dylib         0x1827a7568 mach_msg_trap + 8
1  libsystem_kernel.dylib         0x1827a73e0 mach_msg + 72
2  CoreFoundation                 0x182c5b108 __CFRunLoopServiceMachPort + 196
3  CoreFoundation                 0x182c58cd4 __CFRunLoopRun + 1424
4  CoreFoundation                 0x182b78c58 CFRunLoopRunSpecific + 436
5  Foundation                     0x1835ad594 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 304
6  Foundation                     0x1835ff56c -[NSRunLoop(NSRunLoop) run] + 88
7  banggood                       0x105143b60 +[GAI threadMain:] (GAI.m:241)
8  Foundation                     0x1836af0f4 __NSThread__start__ + 996
9  libsystem_pthread.dylib        0x1828dc2b4 _pthread_body + 308
10 libsystem_pthread.dylib        0x1828dc180 _pthread_body + 310
11 libsystem_pthread.dylib        0x1828dab74 thread_start + 4

#7. com.twitter.crashlytics.ios.MachExceptionServer
0  banggood                       0x105389350 CLSProcessRecordAllThreads (CLSProcess.c:376)
1  banggood                       0x105389350 CLSProcessRecordAllThreads (CLSProcess.c:376)
2  banggood                       0x105389200 CLSProcessRecordAllThreads (CLSProcess.c:407)
3  banggood                       0x105378838 CLSHandler (CLSHandler.m:26)
4  banggood                       0x105373854 CLSMachExceptionServer (CLSMachException.c:446)
5  libsystem_pthread.dylib        0x1828dc2b4 _pthread_body + 308
6  libsystem_pthread.dylib        0x1828dc180 _pthread_body + 310
7  libsystem_pthread.dylib        0x1828dab74 thread_start + 4

#8. com.apple.CFSocket.private
0  libsystem_kernel.dylib         0x1827c8534 __select + 8
1  CoreFoundation                 0x182c63640 __CFSocketManager + 644
2  libsystem_pthread.dylib        0x1828dc2b4 _pthread_body + 308
3  libsystem_pthread.dylib        0x1828dc180 _pthread_body + 310
4  libsystem_pthread.dylib        0x1828dab74 thread_start + 4

#9. AVAudioSession Notify Thread
0  libsystem_kernel.dylib         0x1827a7568 mach_msg_trap + 8
1  libsystem_kernel.dylib         0x1827a73e0 mach_msg + 72
2  CoreFoundation                 0x182c5b108 __CFRunLoopServiceMachPort + 196
3  CoreFoundation                 0x182c58cd4 __CFRunLoopRun + 1424
4  CoreFoundation                 0x182b78c58 CFRunLoopRunSpecific + 436
5  AVFAudio                       0x1884e1cd4 GenericRunLoopThread::Entry(void*) + 164
6  AVFAudio                       0x18850c740 CAPThread::Entry(CAPThread*) + 84
7  libsystem_pthread.dylib        0x1828dc2b4 _pthread_body + 308
8  libsystem_pthread.dylib        0x1828dc180 _pthread_body + 310
9  libsystem_pthread.dylib        0x1828dab74 thread_start + 4

#10. com.apple.CoreMotion.MotionThread
0  libsystem_kernel.dylib         0x1827a7568 mach_msg_trap + 8
1  libsystem_kernel.dylib         0x1827a73e0 mach_msg + 72
2  CoreFoundation                 0x182c5b108 __CFRunLoopServiceMachPort + 196
3  CoreFoundation                 0x182c58cd4 __CFRunLoopRun + 1424
4  CoreFoundation                 0x182b78c58 CFRunLoopRunSpecific + 436
5  CoreFoundation                 0x182bc7d54 CFRunLoopRun + 116
6  CoreMotion                     0x187fe90e8 (null) + 227264
7  libsystem_pthread.dylib        0x1828dc2b4 _pthread_body + 308
8  libsystem_pthread.dylib        0x1828dc180 _pthread_body + 310
9  libsystem_pthread.dylib        0x1828dab74 thread_start + 4

#11. Thread
0  libsystem_kernel.dylib         0x1827c8d80 __workq_kernreturn + 8
1  libsystem_pthread.dylib        0x1828db080 _pthread_wqthread + 1288
2  libsystem_pthread.dylib        0x1828dab6c start_wqthread + 4

#12. Thread
0  libsystem_pthread.dylib        0x1828dab68 start_wqthread + 122

#13. Thread
0  libsystem_pthread.dylib        0x1828dab68 start_wqthread + 122

#14. Thread
0  libsystem_pthread.dylib        0x1828dab68 start_wqthread + 122

#15. Thread
0  libsystem_pthread.dylib        0x1828dab68 start_wqthread + 122

#16. Thread
0  libsystem_kernel.dylib         0x1827c8d80 __workq_kernreturn + 8
1  libsystem_pthread.dylib        0x1828db080 _pthread_wqthread + 1288
2  libsystem_pthread.dylib        0x1828dab6c start_wqthread + 4

#17. Thread
0  libsystem_kernel.dylib         0x1827c8d80 __workq_kernreturn + 8
1  libsystem_pthread.dylib        0x1828daeec _pthread_wqthread + 884
2  libsystem_pthread.dylib        0x1828dab6c start_wqthread + 4

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Comments: 19 (6 by maintainers)

Most upvoted comments

@Ewg777 This bug will be fixed in iOS 12. the issue can close now.

I didn’t want to imply that it’s an SDWebImage bug 😄

Just that if you want to tradeoff performance for less crashes, you can do it by disabling the decode feature