I am showing a SwiftUI view with UIHostingController as part of a MapKit annotation's detailAccessoryView
, and it works fine, never crashed when testing, but now that it is deployed to production, some users are reporting a crash. The crash isn't reproducible for me at this time, but this is the crash report I see repeated across different users:
[NOTE: updated below with better symbolication]
Date/Time: 2021-05-03T14:17:46.999Z
Launch Time: 2021-05-03T11:09:52Z
OS Version: iPhone OS 14.4.2 (18D70)
Report Version: 104
Exception Type: SIGABRT
Exception Codes: #0 at 0x1c0fff84c
Crashed Thread: 0
Thread 0 Crashed:
0 libsystem_kernel.dylib 0x00000001c0fff84c 0x1c0fd8000 + 161868
1 libsystem_c.dylib 0x000000019e5668f4 0x19e4f3000 + 473332
2 AttributeGraph 0x00000001bc924c7c 0x1bc909000 + 113788
3 AttributeGraph 0x00000001bc90ab84 0x1bc909000 + 7044
4 AttributeGraph 0x00000001bc90aed0 0x1bc909000 + 7888
5 AttributeGraph 0x00000001bc90b268 0x1bc909000 + 8808
6 AttributeGraph 0x00000001bc91d7a4 0x1bc909000 + 83876
7 AttributeGraph 0x00000001bc9248f4 0x1bc909000 + 112884
8 SwiftUI 0x000000019bbcd484 0x19b9e2000 + 2012292
9 SwiftUI 0x000000019bc2f920 0x19b9e2000 + 2414880
10 SwiftUI 0x000000019bcdceb8 0x19b9e2000 + 3124920
11 AttributeGraph 0x00000001bc90e14c 0x1bc909000 + 20812
12 AttributeGraph 0x00000001bc90e55c 0x1bc909000 + 21852
13 AttributeGraph 0x00000001bc91377c 0x1bc909000 + 42876
14 AttributeGraph 0x00000001bc924420 0x1bc909000 + 111648
15 SwiftUI 0x000000019bbee6ec 0x19b9e2000 + 2148076
16 SwiftUI 0x000000019bcc5178 0x19b9e2000 + 3027320
17 AttributeGraph 0x00000001bc90e14c 0x1bc909000 + 20812
18 AttributeGraph 0x00000001bc90e55c 0x1bc909000 + 21852
19 AttributeGraph 0x00000001bc91377c 0x1bc909000 + 42876
20 AttributeGraph 0x00000001bc924420 0x1bc909000 + 111648
21 SwiftUI 0x000000019c2dd644 0x19b9e2000 + 9418308
22 SwiftUI 0x000000019bab08f0 0x19b9e2000 + 846064
....
104 SwiftUI 0x000000019c22f328 0x19b9e2000 + 8704808
105 SwiftUI 0x000000019c385980 0x19b9e2000 + 10107264
106 SwiftUI 0x000000019c3859c8 0x19b9e2000 + 10107336
107 UIKitCore 0x0000000197e56bf8 0x1975a8000 + 9104376
108 UIKitCore 0x00000001984f3214 0x1975a8000 + 16036372
109 UIKitCore 0x00000001984f3998 0x1975a8000 + 16038296
110 UIKitCore 0x00000001984f36a8 0x1975a8000 + 16037544
111 UIKitCore 0x00000001984fd160 0x1975a8000 + 16077152
112 UIKitCore 0x00000001984fbf2c 0x1975a8000 + 16072492
113 UIKitCore 0x00000001984fc3e0 0x1975a8000 + 16073696
114 UIKitCore 0x00000001984fc2c0 0x1975a8000 + 16073408
115 CoreAutoLayout 0x00000001a9e71934 0x1a9e62000 + 63796
116 UIKitCore 0x00000001984fca98 0x1975a8000 + 16075416
117 UIKitCore 0x00000001984fb4bc 0x1975a8000 + 16069820
118 UIKitCore 0x00000001984fc6e4 0x1975a8000 + 16074468
119 UIKitCore 0x00000001984fd6bc 0x1975a8000 + 16078524
120 UIKitCore 0x00000001985cce00 0x1975a8000 + 16928256
121 CJournal 0x0000000104a52894 CJournal.MapCalloutView.(setupView in _C3508C6398D3621D6045FB1C8769598A)() -> () (MapCalloutView.swift:80)
122 CJournal 0x0000000104a52aa0 function signature specialization <Arg[0] = Owned To Guaranteed> of CJournal.MapCalloutView.init(rootView: SwiftUI.AnyView) -> CJournal.MapCalloutView (MapCalloutView.swift:43)
123 CJournal 0x0000000104aab01c CJournal.CJMapsCalloutController.makeMapsCalloutView() -> __C.UIView (MapCalloutView.swift:0)
124 CJournal 0x0000000104aab070 @objc CJournal.CJMapsCalloutController.makeMapsCalloutView() -> __C.UIView (<compiler-generated>:0)
125 CJournal 0x000000010483b2a8 -[CJCustomAnnotationView setupAnnotationDetailAccessoryViewWithAddress:] (CJCustomAnnotationView.m:114)
126 CJournal 0x000000010483b154 -[CJCustomAnnotationView setupAnnotationForPersonAddress:] (CJCustomAnnotationView.m:101)
127 CJournal 0x000000010483b370 -[CJCustomAnnotationView setupAnnotationForClusterAnnotation:] (CJCustomAnnotationView.m:124)
128 CJournal 0x000000010483ad70 -[CJCustomAnnotationView configureAnnotationViewWithAnnotation:] (CJCustomAnnotationView.m:37)
129 CJournal 0x000000010483acec -[CJCustomAnnotationView initWithAnnotation:reuseIdentifier:withDefaultColor:withCalloutDelegate:] (CJCustomAnnotationView.m:29)
130 CJournal 0x00000001048f4f74 -[MapViewShared annotationViewForMap:forAnnotation:withCalloutDelegate:] (MapViewShared.m:62)
131 CJournal 0x00000001049194f4 -[MapViewController mapView:viewForAnnotation:] (MapViewController.m:688)
132 MapKit 0x00000001a4c36638 0x1a4c2e000 + 34360
133 MapKit 0x00000001a4c31438 0x1a4c2e000 + 13368
134 MapKit 0x00000001a4d2c428 0x1a4c2e000 + 1041448
135 MapKit 0x00000001a4c651a8 0x1a4c2e000 + 225704
136 MapKit 0x00000001a4e2c314 0x1a4c2e000 + 2089748
137 CoreFoundation 0x00000001957d6cc8 0x195751000 + 548040
138 CoreFoundation 0x0000000195753604 0x195751000 + 9732
139 MapKit 0x00000001a4c34a3c 0x1a4c2e000 + 27196
140 MapKit 0x00000001a4e2b67c 0x1a4c2e000 + 2086524
141 MapKit 0x00000001a4c311f8 0x1a4c2e000 + 12792
142 MapKit 0x00000001a4c30440 0x1a4c2e000 + 9280
143 MapKit 0x00000001a4c6344c 0x1a4c2e000 + 218188
144 VectorKit 0x00000001a4fd647c 0x1a4ee8000 + 975996
145 VectorKit 0x00000001a4f8766c 0x1a4ee8000 + 652908
146 VectorKit 0x00000001a4f87a5c 0x1a4ee8000 + 653916
147 VectorKit 0x00000001a4f87b58 0x1a4ee8000 + 654168
148 VectorKit 0x00000001a4f02814 0x1a4ee8000 + 108564
149 VectorKit 0x00000001a4f03630 0x1a4ee8000 + 112176
150 VectorKit 0x00000001a523b6c4 0x1a4ee8000 + 3487428
151 VectorKit 0x00000001a5236240 0x1a4ee8000 + 3465792
152 VectorKit 0x00000001a536768c 0x1a4ee8000 + 4716172
153 VectorKit 0x00000001a536765c 0x1a4ee8000 + 4716124
154 VectorKit 0x00000001a54f5524 0x1a4ee8000 + 6346020
155 VectorKit 0x00000001a523bcf4 0x1a4ee8000 + 3489012
156 VectorKit 0x00000001a5239b70 0x1a4ee8000 + 3480432
157 VectorKit 0x00000001a54ee4e4 0x1a4ee8000 + 6317284
158 VectorKit 0x00000001a54ee048 0x1a4ee8000 + 6316104
159 QuartzCore 0x00000001989a3640 0x198990000 + 79424
160 IOKit 0x000000019ffe4464 0x19ffdd000 + 29796
161 CoreFoundation 0x00000001957c8b54 0x195751000 + 490324
162 CoreFoundation 0x00000001957ec420 0x195751000 + 635936
163 CoreFoundation 0x00000001957eb834 0x195751000 + 632884
164 CoreFoundation 0x00000001957e59f4 0x195751000 + 608756
165 CoreFoundation 0x00000001957e4ba0 0x195751000 + 605088
166 GraphicsServices 0x00000001ac54a598 0x1ac547000 + 13720
167 UIKitCore 0x00000001980d62f4 0x1975a8000 + 11723508
168 UIKitCore 0x00000001980db874 0x1975a8000 + 11745396
169 CJournal 0x00000001047b9708 main (main.m:20)
170 libdyld.dylib 0x00000001954c3568 0x1954c2000 + 5480
The line here is important
121 CJournal 0x0000000104a52894 CJournal.MapCalloutView.(setupView in _C3508C6398D3621D6045FB1C8769598A)() -> () (MapCalloutView.swift:80)
To show the annotation view's detailAccessoryView
, I use a wrapper UIView which contains the UIHostingController which shows the SwiftUI view. At this point in the code, I call layoutIfNeeded() in the wrapper UIView, so that the view is sized correctly. I'm not sure if that is messing up the layout system or not. I can't reproduce the issue myself, so I can't really test out the theory.
Can anyone shed some light on this? This is the first time I've deployed SwiftUI code in production, so I'm not sure how to read these crash reports, or even take a concrete guess as to what might be happening here.
UPDATE:
Was able to symbolicate the rest of the crash report, including SwiftUI symbols. There seems to be a reference to AG::precondition_failure there.
Here is the better version:
Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY
Triggered by Thread: 0
Thread 0 name:
Thread 0 Crashed:
0 libsystem_kernel.dylib 0x00000001ba42e84c __pthread_kill + 8
1 libsystem_pthread.dylib 0x00000001d6cfc9e8 pthread_kill + 212 (pthread.c:1392)
2 libsystem_c.dylib 0x00000001972688f4 abort + 100 (abort.c:110)
3 AttributeGraph 0x00000001b5d36c7c AG::precondition_failure(char const*, ...) + 188 (ag-util.cc:51)
4 AttributeGraph 0x00000001b5d1cb84 AG::data::table::grow_region() + 288 (ag-data.cc:67)
5 AttributeGraph 0x00000001b5d1ced0 AG::data::table::alloc_page(AG::data::zone&, unsigned int) + 588 (ag-data.cc:212)
6 AttributeGraph 0x00000001b5d1d268 AG::data::zone::alloc_slow(unsigned int, unsigned int) + 228 (ag-data.cc:339)
7 AttributeGraph 0x00000001b5d1d524 AG::data::zone::alloc_bytes_recycle(unsigned int, unsigned int) + 240 (ag-data.h:417)
8 AttributeGraph 0x00000001b5d1d3b8 AG::data::zone::realloc_bytes(AG::data::ptr<void>&, unsigned int, unsigned int, unsigned int) + 112 (ag-data.cc:387)
9 AttributeGraph 0x00000001b5d25b64 AG::data::vector<AG::OutputEdge>::reserve_slow(AG::data::zone&, unsigned int) + 96 (ag-data-vector.h:191)
10 AttributeGraph 0x00000001b5d237d4 void AG::Graph::add_output_edge<AG::Node>(AG::data::ptr<AG::Node>, AG::AttributeID) + 144 (ag-data-vector.h:172)
11 AttributeGraph 0x00000001b5d2370c AG::Graph::add_input_dependencies(AG::AttributeID, AG::AttributeID) + 68 (ag-graph.cc:272)
12 AttributeGraph 0x00000001b5d24d20 AG::Graph::add_input(AG::data::ptr<AG::Node>, AG::AttributeID, unsigned int, AG::swift::metadata const*) + 220 (ag-graph.cc:831)
13 AttributeGraph 0x00000001b5d25700 AG::Graph::input_value_ref_slow(AG::data::ptr<AG::Node>, AG::AttributeID, unsigned int, AGSwiftMetadata const*, bool*, long) + 256 (ag-graph.cc:1140)
14 AttributeGraph 0x00000001b5d36420 AGGraphGetValue + 228 (ag-graph-impl.h:43)
15 SwiftUI 0x0000000194a3b46c DynamicViewPhase.phase.getter + 28 (<compiler-generated>:0)
16 SwiftUI 0x0000000194a3b4c4 DynamicViewPhase.value.getter + 36 (DynamicContainer.swift:814)
17 SwiftUI 0x00000001947b34f8 specialized implicit closure #2 in implicit closure #1 in closure #1 in closure #1 in Attribute.init<A>(_:) + 24
18 SwiftUI 0x00000001947c27fc partial apply for specialized implicit closure #2 in implicit closure #1 in closure #1 in closure #1 in Attribute.init<A>(_:) + 24 (<compiler-generated>:0)
19 AttributeGraph 0x00000001b5d2014c AG::Graph::UpdateStack::update() + 484 (ag-closure.h:108)
20 AttributeGraph 0x00000001b5d2055c AG::Graph::update_attribute(AG::data::ptr<AG::Node>, bool) + 328 (ag-graph-update.cc:563)
21 AttributeGraph 0x00000001b5d2577c AG::Graph::input_value_ref_slow(AG::data::ptr<AG::Node>, AG::AttributeID, unsigned int, AGSwiftMetadata const*, bool*, long) + 380 (ag-graph.cc:1161)
22 AttributeGraph 0x00000001b5d36420 AGGraphGetValue + 228 (ag-graph-impl.h:43)
23 SwiftUI 0x0000000194fdf814 MergedPhase.rhs.getter + 28 (<compiler-generated>:0)
24 SwiftUI 0x0000000194fdf888 MergedPhase.value.getter + 28 (GraphInputs.swift:286)
25 SwiftUI 0x00000001947b34f8 specialized implicit closure #2 in implicit closure #1 in closure #1 in closure #1 in Attribute.init<A>(_:) + 24
26 SwiftUI 0x00000001947be2bc partial apply for specialized implicit closure #2 in implicit closure #1 in closure #1 in closure #1 in Attribute.init<A>(_:) + 24 (<compiler-generated>:0)
27 AttributeGraph 0x00000001b5d2014c AG::Graph::UpdateStack::update() + 484 (ag-closure.h:108)
28 AttributeGraph 0x00000001b5d2055c AG::Graph::update_attribute(AG::data::ptr<AG::Node>, bool) + 328 (ag-graph-update.cc:563)
29 AttributeGraph 0x00000001b5d2577c AG::Graph::input_value_ref_slow(AG::data::ptr<AG::Node>, AG::AttributeID, unsigned int, AGSwiftMetadata const*, bool*, long) + 380 (ag-graph.cc:1161)
30 AttributeGraph 0x00000001b5d36420 AGGraphGetValue + 228 (ag-graph-impl.h:43)
31 SwiftUI 0x0000000194d0d75c DynamicBody.phase.getter + 32 (<compiler-generated>:0)
32 SwiftUI 0x0000000194d0d850 DynamicBody.updateValue() + 112 (DynamicProperty.swift:261)
33 SwiftUI 0x0000000194a4194c partial apply for implicit closure #2 in implicit closure #1 in closure #1 in closure #1 in Attribute.init<A>(_:) + 28 (<compiler-generated>:0)
34 AttributeGraph 0x00000001b5d2014c AG::Graph::UpdateStack::update() + 484 (ag-closure.h:108)
35 AttributeGraph 0x00000001b5d2055c AG::Graph::update_attribute(AG::data::ptr<AG::Node>, bool) + 328 (ag-graph-update.cc:563)
36 AttributeGraph 0x00000001b5d2577c AG::Graph::input_value_ref_slow(AG::data::ptr<AG::Node>, AG::AttributeID, unsigned int, AGSwiftMetadata const*, bool*, long) + 380 (ag-graph.cc:1161)
37 AttributeGraph 0x00000001b5d36420 AGGraphGetValue + 228 (ag-graph-impl.h:43)
38 SwiftUI 0x00000001948e880c specialized UnaryLayoutComputer.layout.getter + 20
39 SwiftUI 0x00000001948e91d8 specialized UnaryLayoutComputer.updateValue() + 104 (UnaryLayoutView.swift:217)
40 SwiftUI 0x00000001949bf990 partial apply for specialized implicit closure #2 in implicit closure #1 in closure #1 in closure #1 in Attribute.init<A>(_:) + 20 (<compiler-generated>:0)
41 AttributeGraph 0x00000001b5d2014c AG::Graph::UpdateStack::update() + 484 (ag-closure.h:108)
42 AttributeGraph 0x00000001b5d2055c AG::Graph::update_attribute(AG::data::ptr<AG::Node>, bool) + 328 (ag-graph-update.cc:563)
43 AttributeGraph 0x00000001b5d2577c AG::Graph::input_value_ref_slow(AG::data::ptr<AG::Node>, AG::AttributeID, unsigned int, AGSwiftMetadata const*, bool*, long) + 380 (ag-graph.cc:1161)
44 AttributeGraph 0x00000001b5d36220 AGGraphGetInputValue + 268 (ag-graph-impl.h:43)
45 SwiftUI 0x0000000194a445dc LayoutProxy.layoutComputer.getter + 84 (<compiler-generated>:0)
46 SwiftUI 0x0000000194d5cdb8 accumulateSpacing #1 (ofChild:) in StackLayout.Header.init(layoutContext:proxies:majorAxis:minorAxisAlignment:uniformSpacing:childStorage:capacity:resizeChildrenWithTrailingOverflow:) + 292 (LayoutProxy.swift:29)
47 SwiftUI 0x0000000194d5c9a8 StackLayout.Header.init(layoutContext:proxies:majorAxis:minorAxisAlignment:uniformSpacing:childStorage:capacity:resizeChildrenWithTrailingOverflow:) + 396 (StackLayout.swift:438)
48 SwiftUI 0x0000000194936f80 specialized ManagedBufferPointer.init(bufferClass:minimumCapacity:makingHeaderWith:) + 268 (StackLayout.swift:378)
49 SwiftUI 0x00000001949373c8 specialized closure #2 in HVStack.updateLayoutComputer<A>(rule:layoutContext:children:) + 156
50 SwiftUI 0x00000001949bd298 specialized closure #2 in HVStack.updateLayoutComputer<A>(rule:layoutContext:children:) + 44
51 SwiftUI 0x00000001949c7c7c partial apply for specialized closure #2 in HVStack.updateLayoutComputer<A>(rule:layoutContext:children:) + 40
52 SwiftUI 0x000000019493766c specialized static LayoutComputerDelegate.update<A>(_:maybeInPlace:create:) + 140 (LayoutComputer.swift:304)
53 SwiftUI 0x00000001948a4580 specialized StatefulRule<>.updateLayoutComputer<A>(layout:environment:layoutComputers:) + 100
54 SwiftUI 0x00000001949b9a50 specialized implicit closure #2 in implicit closure #1 in closure #1 in closure #1 in Attribute.init<A>(_:) + 212 (DynamicLayoutView.swift:277)
55 AttributeGraph 0x00000001b5d2014c AG::Graph::UpdateStack::update() + 484 (ag-closure.h:108)
56 AttributeGraph 0x00000001b5d2055c AG::Graph::update_attribute(AG::data::ptr<AG::Node>, bool) + 328 (ag-graph-update.cc:563)
57 AttributeGraph 0x00000001b5d256e0 AG::Graph::input_value_ref_slow(AG::data::ptr<AG::Node>, AG::AttributeID, unsigned int, AGSwiftMetadata const*, bool*, long) + 224 (ag-graph.cc:1136)
58 AttributeGraph 0x00000001b5d36220 AGGraphGetInputValue + 268 (ag-graph-impl.h:43)
59 SwiftUI 0x0000000194a445dc LayoutProxy.layoutComputer.getter + 84 (<compiler-generated>:0)
60 SwiftUI 0x0000000194c013d8 _FlexFrameLayout.sizeThatFits(in:context:child:) + 436 (LayoutProxy.swift:46)
61 SwiftUI 0x0000000194c01630 protocol witness for UnaryLayout.sizeThatFits(in:context:child:) in conformance _FlexFrameLayout + 68 (<compiler-generated>:0)
62 SwiftUI 0x0000000194b2da3c closure #1 in UnaryLayoutEngine.sizeThatFits(_:) + 76 (UnaryLayoutView.swift:258)
63 SwiftUI 0x0000000194b2d97c UnaryLayoutEngine.sizeThatFits(_:) + 444 (StandardLibraryAdditions.swift:0)
64 SwiftUI 0x0000000194db8a20 LayoutComputer.EngineDelegate.sizeThatFits(_:) + 68 (LayoutComputer.swift:154)
65 SwiftUI 0x0000000194b2aac4 _PaddingLayout.sizeThatFits(in:context:child:) + 200 (LayoutComputer.swift:47)
66 SwiftUI 0x0000000194b2afd8 protocol witness for UnaryLayout.sizeThatFits(in:context:child:) in conformance _PaddingLayout + 40 (<compiler-generated>:0)
67 SwiftUI 0x0000000194b2da3c closure #1 in UnaryLayoutEngine.sizeThatFits(_:) + 76 (UnaryLayoutView.swift:258)
68 SwiftUI 0x0000000194b2d97c UnaryLayoutEngine.sizeThatFits(_:) + 444 (StandardLibraryAdditions.swift:0)
69 SwiftUI 0x0000000194db8a20 LayoutComputer.EngineDelegate.sizeThatFits(_:) + 68 (LayoutComputer.swift:154)
70 SwiftUI 0x0000000194b3e200 ViewGraph.sizeThatFits(_:) + 252 (LayoutComputer.swift:47)
71 SwiftUI 0x0000000194f345e0 closure #1 in ViewRendererHost.sizeThatFits(_:) + 52 (ViewRendererHost.swift:249)
72 SwiftUI 0x0000000194adeec4 thunk for @callee_guaranteed (@guaranteed ViewGraph) -> (@unowned CGSize) + 24 (<compiler-generated>:0)
73 SwiftUI 0x0000000194f3287c closure #1 in ViewRendererHost.updateViewGraph<A>(body:) + 92 (ViewRendererHost.swift:92)
74 SwiftUI 0x0000000194f2b0b4 ViewRendererHost.updateViewGraph<A>(body:) + 88 (<compiler-generated>:0)
75 SwiftUI 0x0000000194f31328 ViewRendererHost.sizeThatFits(_:) + 112 (ViewRendererHost.swift:249)
76 SwiftUI 0x0000000195087980 _UIHostingView.sizeThatFits(_:) + 112 (UIHostingView.swift:1865)
77 SwiftUI 0x00000001950879c8 @objc _UIHostingView._baselineOffsets(at:) + 48
78 UIKitCore 0x0000000190b58bf8 -[UIView(_UIConstraintBasedLayoutEmbedding) _layoutSizeThatFits:fixedAxes:] + 84 (UIView_UnifiedLayout.m:27)
79 UIKitCore 0x00000001911f5214 -[UIView(UIConstraintBasedLayout) intrinsicContentSize] + 92 (NSLayoutConstraint_UIKitAdditions.m:2112)
80 UIKitCore 0x00000001911f5998 -[UIView(UIConstraintBasedLayout) _generateContentSizeConstraints] + 52 (NSLayoutConstraint_UIKitAdditions.m:2239)
81 UIKitCore 0x00000001911f56a8 -[UIView(UIConstraintBasedLayout) _updateContentSizeConstraints] + 340 (NSLayoutConstraint_UIKitAdditions.m:2187)
82 UIKitCore 0x00000001911ff160 -[UIView(AdditionalLayoutSupport) _updateSystemConstraints] + 124 (NSLayoutConstraint_UIKitAdditions.m:4611)
83 UIKitCore 0x00000001911fdf2c -[UIView(AdditionalLayoutSupport) _sendUpdateConstraintsIfNecessaryForSecondPass:] + 480 (NSLayoutConstraint_UIKitAdditions.m:0)
84 UIKitCore 0x00000001911fe3e0 -[UIView(AdditionalLayoutSupport) _updateConstraintsIfNeededCollectingViews:forSecondPass:] + 944 (NSLayoutConstraint_UIKitAdditions.m:4412)
85 UIKitCore 0x00000001911fe2c0 -[UIView(AdditionalLayoutSupport) _updateConstraintsIfNeededCollectingViews:forSecondPass:] + 656 (NSLayoutConstraint_UIKitAdditions.m:4393)
86 CoreAutoLayout 0x00000001a2b73934 -[NSISEngine withBehaviors:performModifications:] + 80 (NSISEngine.m:1917)
87 UIKitCore 0x00000001911fea98 __100-[UIView(AdditionalLayoutSupport) _updateConstraintsIfNeededWithViewForVariableChangeNotifications:]_block_invoke + 88 (NSLayoutConstraint_UIKitAdditions.m:4458)
88 UIKitCore 0x00000001911fd4bc -[UIView(AdditionalLayoutSupport) _withUnsatisfiableConstraintsLoggingSuspendedIfEngineDelegateExists:] + 120 (NSLayoutConstraint_UIKitAdditions.m:4157)
89 UIKitCore 0x00000001911fe6e4 -[UIView(AdditionalLayoutSupport) _updateConstraintsIfNeededWithViewForVariableChangeNotifications:] + 160 (NSLayoutConstraint_UIKitAdditions.m:4457)
90 UIKitCore 0x00000001911ff6bc -[UIView(AdditionalLayoutSupport) _updateConstraintsAtEngineLevelIfNeededWithViewForVariableChangeNotifications:] + 428 (NSLayoutConstraint_UIKitAdditions.m:4722)
91 UIKitCore 0x00000001912cee00 -[UIView(Hierarchy) layoutBelowIfNeeded] + 860 (UIView.m:12277)
92 CJournal 0x00000001029e2894 MapCalloutView.setupView() + 948 (MapCalloutView.swift:80)
93 CJournal 0x00000001029e2aa0 specialized MapCalloutView.init(rootView:) + 320 (MapCalloutView.swift:43)
94 CJournal 0x0000000102a3b01c MapCalloutView.init(rootView:) + 8 (MapCalloutView.swift:0)
95 CJournal 0x0000000102a3b01c MapCalloutView.__allocating_init(rootView:) + 24 (CJMapsCalloutController.swift:19)
96 CJournal 0x0000000102a3b01c CJMapsCalloutController.makeMapsCalloutView() + 252
97 CJournal 0x0000000102a3b070 @objc CJMapsCalloutController.makeMapsCalloutView() + 28 (<compiler-generated>:0)
98 CJournal 0x00000001027cb2a8 -[CJCustomAnnotationView setupAnnotationDetailAccessoryViewWithAddress:] + 312 (CJCustomAnnotationView.m:114)
99 CJournal 0x00000001027cb154 -[CJCustomAnnotationView setupAnnotationForPersonAddress:] + 553300 (CJCustomAnnotationView.m:0)
100 CJournal 0x00000001027cb370 -[CJCustomAnnotationView setupAnnotationForClusterAnnotation:] + 553840 (CJCustomAnnotationView.m:0)
101 CJournal 0x00000001027cad70 -[CJCustomAnnotationView configureAnnotationViewWithAnnotation:] + 552304 (CJCustomAnnotationView.m:38)
102 CJournal 0x00000001027cacec -[CJCustomAnnotationView initWithAnnotation:reuseIdentifier:withDefaultColor:withCalloutDelegate:] + 552172 (CJCustomAnnotationView.m:32)
103 CJournal 0x0000000102884f74 -[MapViewShared annotationViewForMap:forAnnotation:withCalloutDelegate:] + 1314676 (MapViewShared.m:62)