Skip to content

Crash on XLFormTextFieldCell.m line 102 #1043

@liraz

Description

@liraz

Seems like memory for UITextfield delegate and target selector is not released.
Causing in the following crash:

Crashed: com.apple.main-thread
0  libobjc.A.dylib                0x198edbdac object_isClass + 16
1  Foundation                     0x19a784928 KVO_IS_RETAINING_ALL_OBSERVERS_OF_THIS_OBJECT_IF_IT_CRASHES_AN_OBSERVER_WAS_OVERRELEASED_OR_SMASHED + 68
2  Foundation                     0x19a7820bc NSKeyValueWillChangeWithPerThreadPendingNotifications.llvm.16432713543580414412 + 304
3  UIKitCore                      0x1c71a2934 -[UITextField setDelegate:] + 120
4  XLForm                         0x1021da718 -[XLFormTextFieldCell update] (XLFormTextFieldCell.m:102)
5  XLForm                         0x1021e2bd0 -[XLFormViewController configureCell:] (XLFormViewController.m:587)
6  XLForm                         0x1021e2b6c -[XLFormViewController updateFormRow:] (XLFormViewController.m:579)
7  XLForm                         0x1021e3134 -[XLFormViewController tableView:cellForRowAtIndexPath:] (XLFormViewController.m:616)
8  UIKitCore                      0x1c70ccde4 -[UITableView _createPreparedCellForGlobalRow:withIndexPath:willDisplay:] + 684
9  UIKitCore                      0x1c70cd32c -[UITableView _createPreparedCellForGlobalRow:willDisplay:] + 80
10 UIKitCore                      0x1c7098a04 -[UITableView _updateVisibleCellsNow:isRecursive:] + 2256
11 UIKitCore                      0x1c70b68f0 -[UITableView layoutSubviews] + 140
12 UIKitCore                      0x1c734b7dc -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 1380
13 QuartzCore                     0x19e309b74 -[CALayer layoutSublayers] + 184
14 QuartzCore                     0x19e30eb2c CA::Layer::layout_if_needed(CA::Transaction*) + 324
15 QuartzCore                     0x19e26d44c CA::Context::commit_transaction(CA::Transaction*) + 340
16 QuartzCore                     0x19e29bd7c CA::Transaction::commit() + 608
17 UIKitCore                      0x1c6ecba3c _afterCACommitHandler + 256
18 CoreFoundation                 0x199c9c7cc __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 32
19 CoreFoundation                 0x199c97460 __CFRunLoopDoObservers + 412
20 CoreFoundation                 0x199c97a00 __CFRunLoopRun + 1264
21 CoreFoundation                 0x199c971f0 CFRunLoopRunSpecific + 436
22 GraphicsServices               0x19bf10584 GSEventRunModal + 100
23 UIKitCore                      0x1c6ea2d40 UIApplicationMain + 212
24 EVgo                           0x100945e2c main (main.m:26)
25 libdyld.dylib                  0x199756bb4 start + 4

The KVO_IS_RETAINING_ALL_OBSERVERS_OF_THIS_OBJECT_IF_IT_CRASHES_AN_OBSERVER_WAS_OVERRELEASED_OR_SMASHED happens after few times of allocation and release of the XLForm rows.
and at some point the delegate still points to an older object and target listener is still there.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions