Outlined consume of Settings crash
DamonFish opened this issue · 3 comments
DamonFish commented
Describe the bug
Firebase reported the crash.
Environment
- iOS version: 16.4.0
- Devices affected: iPhone 13
- SDK Version: 1.4.5
I checked out the new version 1.4.7 and don't think this has been fixed.
Please correct me if I'm wrong.
Screenshots
Crashed: com.apple.NSURLSession-delegate
0 libsystem_kernel.dylib 0x7558 __pthread_kill + 8
1 libsystem_pthread.dylib 0x7118 pthread_kill + 268
2 libsystem_c.dylib 0x1d178 abort + 180
3 libsystem_malloc.dylib 0x1e0e4 malloc_vreport + 908
4 libsystem_malloc.dylib 0x1e38c malloc_zone_error + 104
5 libsystem_malloc.dylib 0x11a38 _szone_free + 480
6 CoreFoundation 0x7d478 _CFRelease + 1392
7 libswiftCore.dylib 0x3adac8 swift_arrayDestroy + 124
8 libswiftCore.dylib 0xc8a08 _DictionaryStorage.deinit + 268
9 libswiftCore.dylib 0xc8b3c _DictionaryStorage.__deallocating_deinit + 16
10 libswiftCore.dylib 0x3bde28 _swift_release_dealloc + 56
11 libswiftCore.dylib 0x3bec4c bool swift::RefCounts<swift::RefCountBitsT<(swift::RefCountInlinedness)1> >::doDecrementSlow<(swift::PerformDeinit)1>(swift::RefCountBitsT<(swift::RefCountInlinedness)1>, unsigned int) + 132
12 libswiftCore.dylib 0x3adac8 swift_arrayDestroy + 124
13 libswiftCore.dylib 0xc8ad0 _DictionaryStorage.deinit + 468
14 libswiftCore.dylib 0xc8b3c _DictionaryStorage.__deallocating_deinit + 16
15 libswiftCore.dylib 0x3bde28 _swift_release_dealloc + 56
16 libswiftCore.dylib 0x3bec4c bool swift::RefCounts<swift::RefCountBitsT<(swift::RefCountInlinedness)1> >::doDecrementSlow<(swift::PerformDeinit)1>(swift::RefCountBitsT<(swift::RefCountInlinedness)1>, unsigned int) + 132
17 NeuronPubliciOS 0x3f3cf8 outlined consume of Settings? + 4342086904
18 NeuronPubliciOS 0x3f3bcc protocol witness for Plugin.update(settings:type:) in conformance DestinationMetadataPlugin + 20 (DestinationMetadataPlugin.swift:20)
19 NeuronPubliciOS 0x406338 partial apply for closure #1 in Analytics.update(plugin:settings:type:) + 4342162232
20 NeuronPubliciOS 0x3ed74c DestinationPlugin.apply(closure:) + 98 (Timeline.swift:98)
21 NeuronPubliciOS 0x404238 Analytics.update(settings:type:) + 115 (Settings.swift:115)
22 NeuronPubliciOS 0x404768 closure #2 in Analytics.checkSettings() + 157 (Settings.swift:157)
23 NeuronPubliciOS 0x423328 closure #1 in HTTPClient.settingsFor(writeKey:completion:) + 122 (HTTPClient.swift:122)
24 NeuronPubliciOS 0x3ff840 thunk for @escaping @callee_guaranteed @Sendable (@guaranteed Data?, @guaranteed NSURLResponse?, @guaranteed Error?) -> () + 4342134848 (<compiler-generated>:4342134848)
25 CFNetwork 0x1f97c CFURLRequestSetMainDocumentURL + 2972
26 CFNetwork 0x2f664 _CFNetworkErrorCopyLocalizedDescriptionWithHostname + 13648
27 libdispatch.dylib 0x2320 _dispatch_call_block_and_release + 32
28 libdispatch.dylib 0x3eac _dispatch_client_callout + 20
29 libdispatch.dylib 0xb534 _dispatch_lane_serial_drain + 668
30 libdispatch.dylib 0xc0d8 _dispatch_lane_invoke + 436
31 libdispatch.dylib 0x16cdc _dispatch_workloop_worker_thread + 648
32 libsystem_pthread.dylib 0xddc _pthread_wqthread + 288
33 libsystem_pthread.dylib 0xb7c start_wqthread + 8
Additional context
Hi, guys.
Firebase has reported this issue several times.
Is it a concurrency issue?
By the way, I added a simple plugin to replace the default device id.
I don't think it should affect this issue.
Thank you!
bsneed commented
Does DestinationMetadataPlugin.swift belong to you?
DamonFish commented
No. It belongs to the segment.
bsneed commented
I can't reproduce this so I'm gonna need some more context. Please reopen this ticket if there's anything you can add.