yandexmobile / yandexmapkit-ios

Yandex Map Kit for iOS
Other
173 stars 30 forks source link

Крэш в -[YMJamStylesFetchOperation buildRequest] #204

Open HiveHicks opened 6 years ago

HiveHicks commented 6 years ago

Видим в Crashlytics от 1 до 10 крэшей в день.

EXC_BAD_ACCESS KERN_INVALID_ADDRESS 0x0000000013372ab0

Crashed: NSOperationQueue 0x134000610 (QOS: UNSPECIFIED)
0  libobjc.A.dylib                0x18039c1a0 objc_retain + 16
1  CoreFoundation                 0x181138328 +[__NSDictionaryI __new::::::] + 384
2  CoreFoundation                 0x18100b53c -[NSDictionary initWithObjectsAndKeys:] + 556
3  YandexMapKit                   0x105ecab30 -[YMJamStylesFetchOperation buildRequest] + 296
4  YandexMapKit                   0x105eca708 -[YMJamStylesFetchOperation main] + 44
5  Foundation                     0x181a414c4 -[__NSOperationInternal _start:] + 848
6  Foundation                     0x181b13894 __NSOQSchedule_f + 404
7  libdispatch.dylib              0x180ab6a14 _dispatch_client_callout + 16
8  libdispatch.dylib              0x180abef08 _dispatch_continuation_pop$VARIANT$mp + 428
9  libdispatch.dylib              0x180abd80c _dispatch_async_redirect_invoke$VARIANT$mp + 604
10 libdispatch.dylib              0x180ac3cf4 _dispatch_root_queue_drain + 600
11 libdispatch.dylib              0x180ac3a38 _dispatch_worker_thread3 + 120
12 libsystem_pthread.dylib        0x180d5f06c _pthread_wqthread + 1268
13 libsystem_pthread.dylib        0x180d5eb6c start_wqthread + 4

В это же время в другом потоке:

#7. NSOperationQueue 0x133693960 (QOS: UNSPECIFIED)
0  libsystem_malloc.dylib         0x180c81adc malloc_zone_malloc
1  libsystem_malloc.dylib         0x180c84540 malloc + 32
2  libsystem_c.dylib              0x180b5a844 _vasprintf + 144
3  libsystem_c.dylib              0x180b5a778 asprintf + 76
4  ImageIO                        0x1831f2a84 IIOImageRead::getCFDataBytesAtOffset(void*, unsigned long, unsigned long) + 304
5  ImageIO                        0x1831f257c IIOImageRead::getBytesAtOffset(void*, unsigned long, unsigned long) + 348
6  ImageIO                        0x1831109b4 IIOImageReadSession::getBytes(void*, unsigned long) + 32
7  ImageIO                        0x18307c06c read_fn(png_struct_def*, unsigned char*, unsigned long) + 44
8  ImageIO                        0x18322bda0 png_crc_read + 48
9  ImageIO                        0x18322c314 png_handle_PLTE + 352
10 ImageIO                        0x183277164 _cg_png_read_info + 1216
11 ImageIO                        0x18307d228 PNGReadPlugin::init() + 1100
12 ImageIO                        0x183081a7c PNGReadPlugin::InitWithOffset(CGImagePlugin*, unsigned long, unsigned long, unsigned long) + 164
13 ImageIO                        0x183060af8 IIOImageSource::makeImagePlus(unsigned long, IIODictionary*) + 628
14 ImageIO                        0x183060384 IIOImageSource::createImageAtIndex(unsigned long, IIODictionary*) + 64
15 ImageIO                        0x1830646e4 CGImageSourceCreateImageAtIndex + 248
16 UIKit                          0x18a8252b0 _UIImageRefFromData + 420
17 UIKit                          0x18a996608 -[UIImage(UIImagePrivate) _initWithData:preserveScale:cache:] + 124
18 UIKit                          0x18a8250d8 +[UIImage imageWithData:] + 72
19 YandexMapKit                   0x105f42cdc YMKTileDecoder::decodeObjCTileFromLayerData(TileLayer, unsigned char const*, unsigned long) + 112
20 YandexMapKit                   0x105f42de8 YMKTileDecoder::decodeTileFromLayerData(TileLayer, unsigned char const*, unsigned long) + 88
21 YandexMapKit                   0x105ebdef4 SimpleTileManager::copySuccessfulResultToOriginalRequest(yboost::shared_ptr<RequestState> const&) + 160
22 YandexMapKit                   0x105ebe44c SimpleTileManager::diskRequestsUpdated(yboost::shared_ptr<SimpleTileManager>, std::vector<yboost::shared_ptr<AbstractTileRequest<MapTile, InternalLoadingResultCode, yboost::shared_ptr<InternalLoadingResult> > >, std::allocator<yboost::shared_ptr<AbstractTileRequest<MapTile, InternalLoadingResultCode, yboost::shared_ptr<InternalLoadingResult> > > > > const&) + 1220
23 YandexMapKit                   0x105ebf238 void yboost::callback<void (*)(yboost::shared_ptr<SimpleTileManager>, std::vector<yboost::shared_ptr<AbstractTileRequest<MapTile, InternalLoadingResultCode, yboost::shared_ptr<InternalLoadingResult> > >, std::allocator<yboost::shared_ptr<AbstractTileRequest<MapTile, InternalLoadingResultCode, yboost::shared_ptr<InternalLoadingResult> > > > > const&)>::func_converter<&(SimpleTileManager::diskRequestsUpdated(yboost::shared_ptr<SimpleTileManager>, std::vector<yboost::shared_ptr<AbstractTileRequest<MapTile, InternalLoadingResultCode, yboost::shared_ptr<InternalLoadingResult> > >, std::allocator<yboost::shared_ptr<AbstractTileRequest<MapTile, InternalLoadingResultCode, yboost::shared_ptr<InternalLoadingResult> > > > > const&))>(void*, yboost::shared_ptr<SimpleTileManager>, std::vector<yboost::shared_ptr<AbstractTileRequest<MapTile, InternalLoadingResultCode, yboost::shared_ptr<InternalLoadingResult> > >, std::allocator<yboost::shared_ptr<AbstractTileRequest<MapTile, InternalLoadingResultCode, yboost::shared_ptr<InternalLoadingResult> > > > > const&) + 64
24 YandexMapKit                   0x105efff84 yboost::callback<void (*)(yboost::shared_ptr<SimpleTileManager>, std::vector<yboost::shared_ptr<AbstractTileRequest<MapTile, InternalLoadingResultCode, yboost::shared_ptr<InternalLoadingResult> > >, std::allocator<yboost::shared_ptr<AbstractTileRequest<MapTile, InternalLoadingResultCode, yboost::shared_ptr<InternalLoadingResult> > > > > const&)>::operator()(yboost::shared_ptr<SimpleTileManager>, std::vector<yboost::shared_ptr<AbstractTileRequest<MapTile, InternalLoadingResultCode, yboost::shared_ptr<InternalLoadingResult> > >, std::allocator<yboost::shared_ptr<AbstractTileRequest<MapTile, InternalLoadingResultCode, yboost::shared_ptr<InternalLoadingResult> > > > > const&) + 76
25 YandexMapKit                   0x105f442bc YMKDiskTileSource::handleReadyRequest(yboost::shared_ptr<YMKDiskTileSource>, yboost::shared_ptr<DiskReadRequest<YMKDiskTileSource> >) + 196
26 YandexMapKit                   0x105f443a8 void yboost::callback<void (*)(yboost::shared_ptr<YMKDiskTileSource>, yboost::shared_ptr<DiskReadRequest<YMKDiskTileSource> >)>::func_converter<&(YMKDiskTileSource::handleReadyRequest(yboost::shared_ptr<YMKDiskTileSource>, yboost::shared_ptr<DiskReadRequest<YMKDiskTileSource> >))>(void*, yboost::shared_ptr<YMKDiskTileSource>, yboost::shared_ptr<DiskReadRequest<YMKDiskTileSource> >) + 96
27 YandexMapKit                   0x105ed26c8 yboost::callback<void (*)(yboost::shared_ptr<YMKDiskTileSource>, yboost::shared_ptr<DiskReadRequest<YMKDiskTileSource> >)>::operator()(yboost::shared_ptr<YMKDiskTileSource>, yboost::shared_ptr<DiskReadRequest<YMKDiskTileSource> >) + 108
28 YandexMapKit                   0x105ed251c DiskReadRequest<YMKDiskTileSource>::finish() + 108
29 YandexMapKit                   0x105ed229c DiskReadRequest<YMKDiskTileSource>::main() + 1320
30 YandexMapKit                   0x105ed1cb4 -[YMKAsyncPerformer performReadRequest:] + 80
31 Foundation                     0x181b372e4 __NSThreadPerformPerform + 340
32 CoreFoundation                 0x1810e297c __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 24
33 CoreFoundation                 0x1810e28fc __CFRunLoopDoSource0 + 88
34 CoreFoundation                 0x1810e2184 __CFRunLoopDoSources0 + 204
35 CoreFoundation                 0x1810dfd5c __CFRunLoopRun + 1048
36 CoreFoundation                 0x180fffe58 CFRunLoopRunSpecific + 436
37 Foundation                     0x181a35594 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 304
38 Foundation                     0x181a549ac -[NSRunLoop(NSRunLoop) runUntilDate:] + 96
39 YandexMapKit                   0x105f80714 -[YFHTTPLoadingOperation main] + 328
40 Foundation                     0x181a414c4 -[__NSOperationInternal _start:] + 848
41 Foundation                     0x181b13894 __NSOQSchedule_f + 404
42 libdispatch.dylib              0x180ab6a14 _dispatch_client_callout + 16
43 libdispatch.dylib              0x180abef08 _dispatch_continuation_pop$VARIANT$mp + 428
44 libdispatch.dylib              0x180abd8c0 _dispatch_async_redirect_invoke$VARIANT$mp + 784
45 libdispatch.dylib              0x180ac3cf4 _dispatch_root_queue_drain + 600
46 libdispatch.dylib              0x180ac3a38 _dispatch_worker_thread3 + 120
47 libsystem_pthread.dylib        0x180d5f06c _pthread_wqthread + 1268
48 libsystem_pthread.dylib        0x180d5eb6c start_wqthread + 4