I am getting intermittent crash in _UIFlowLayoutRow layoutRow
. I can't figure out what is causing this to happen, it seems like a normal layout stack.
In vast majority of cases it works so this must be some race condition which I can't catch.
Thread 0#0 (null) in -[_UIFlowLayoutRow layoutRow] ()
#1 (null) in -[_UIFlowLayoutRow layoutRow] ()
#2 (null) in -[_UIFlowLayoutSection computeLayoutInRect:forSection:invalidating:invalidationContext:] ()
#3 (null) in __76-[UICollectionViewFlowLayout _updateItemsLayoutForRect:allowsPartialUpdate:]_block_invoke ()
#4 (null) in __NSARRAY_IS_CALLING_OUT_TO_A_BLOCK__ ()
#5 (null) in -[__NSArrayM enumerateObjectsWithOptions:usingBlock:] ()
#6 (null) in -[UICollectionViewFlowLayout _updateItemsLayoutForRect:allowsPartialUpdate:] ()
#7 (null) in -[UICollectionViewFlowLayout _fetchItemsInfoForRect:] ()
#8 (null) in -[UICollectionViewFlowLayout collectionViewContentSize] ()
#9 (null) in -[UICollectionViewFlowLayout invalidateLayoutWithContext:] ()
#10 (null) in -[UICollectionViewLayout _invalidateLayoutUsingContext:] ()
#11 (null) in -[UICollectionView setBounds:] ()
#12 (null) in -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] ()
#13 (null) in -[UIView(Geometry) _resizeWithOldSuperviewSize:] ()
#14 (null) in -[UIScrollView(_UIOldConstraintBasedLayoutSupport) _resizeWithOldSuperviewSize:] ()
#15 (null) in __46-[UIView(Geometry) resizeSubviewsWithOldSize:]_block_invoke ()
#16 (null) in __NSARRAY_IS_CALLING_OUT_TO_A_BLOCK__ ()
#17 (null) in -[__NSArrayM enumerateObjectsWithOptions:usingBlock:] ()
#18 (null) in -[UIView(Geometry) resizeSubviewsWithOldSize:] ()
#19 (null) in -[UIView(AdditionalLayoutSupport) _is_layout] ()
#20 (null) in -[UIView _updateConstraintsAsNecessaryAndApplyLayoutFromEngine] ()
#21 (null) in -[UIView(CALayerDelegate) layoutSublayersOfLayer:] ()
#22 (null) in CA::Layer::layout_if_needed(CA::Transaction*) ()
#23 (null) in CA::Layer::layout_and_display_if_needed(CA::Transaction*) ()
#24 (null) in CA::Context::commit_transaction(CA::Transaction*, double, double*) ()
#25 (null) in CA::Transaction::commit() ()
#26 (null) in CA::Transaction::flush_as_runloop_observer(bool) ()
#27 (null) in __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ ()
#28 (null) in __CFRunLoopDoObservers ()
#29 (null) in __CFRunLoopRun ()
#30 (null) in CFRunLoopRunSpecific ()
#31 (null) in GSEventRunModal ()
#32 (null) in -[UIApplication _run] ()
#33 (null) in UIApplicationMain ()