PrettyExample infinitely recurses on loading
paulb777 opened this issue · 1 comments
paulb777 commented
The observeValueForKeyPath in PrettyTableViewCell.m infinitely recurses and crashes 72704 stack frames deep:
(lldb) bt 40
- thread #1: tid = 0x199277, 0x0381e1f9 libsystem_malloc.dylib
calloc + 9, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=2, address=0xbf715ffc) frame #0: 0x0381e1f9 libsystem_malloc.dylib
calloc + 9
frame #1: 0x0202bcc1 libobjc.A.dylibclass_createInstance + 68 frame #2: 0x019a3fa7 Foundation
NSAllocateObject + 33
frame #3: 0x019c6387 Foundation_NSNewValue + 1088 frame #4: 0x019c5f2e Foundation
+[NSValue valueWithBytes:objCType:] + 39
frame #5: 0x019e1633 Foundation+[NSValue valueWithRect:] + 53 frame #6: 0x01a61f15 Foundation
_NSGetRectValueWithMethod + 110
frame #7: 0x019d0f28 Foundation_NSGetUsingKeyValueGetter + 104 frame #8: 0x019d0eb8 Foundation
-[NSObject(NSKeyValueCoding) valueForKey:] + 260
frame #9: 0x019ea60d Foundation-[NSObject(NSKeyValueCoding) valueForKeyPath:] + 383 frame #10: 0x019aa3f5 Foundation
NSKeyValueWillChangeBySetting + 49
frame #11: 0x019a8103 FoundationNSKeyValueWillChange + 408 frame #12: 0x019af3a5 Foundation
-[NSObject(NSKeyValueObserverNotification) willChangeValueForKey:] + 246
frame #13: 0x01a59163 Foundation`_NSSetRectValueAndNotify + 117- frame #14: 0x000f4cc8 PrettyExample
-[PrettyTableViewCell observeValueForKeyPath:ofObject:change:context:](self=0x78661870, _cmd=0x01bda3bc, keyPath=0x00146538, object=0x78662070, change=0x789d0bf0, context=0x00000000) + 808 at PrettyTableViewCell.m:477 frame #15: 0x019ab673 Foundation
NSKeyValueNotifyObserver + 359
frame #16: 0x019aa730 FoundationNSKeyValueDidChange + 462 frame #17: 0x019af485 Foundation
-[NSObject(NSKeyValueObserverNotification) didChangeValueForKey:] + 120
frame #18: 0x01a591ae Foundation_NSSetRectValueAndNotify + 192 frame #19: 0x000f4cc8 PrettyExample
-[PrettyTableViewCell observeValueForKeyPath:ofObject:change:context:](self=0x78661870, _cmd=0x01bda3bc, keyPath=0x00146538, object=0x78662070, change=0x789d0b80, context=0x00000000) + 808 at PrettyTableViewCell.m:477
frame #20: 0x019ab673 FoundationNSKeyValueNotifyObserver + 359 frame #21: 0x019aa730 Foundation
NSKeyValueDidChange + 462
frame #22: 0x019af485 Foundation-[NSObject(NSKeyValueObserverNotification) didChangeValueForKey:] + 120 frame #23: 0x01a591ae Foundation
_NSSetRectValueAndNotify + 192
frame #24: 0x000f4cc8 PrettyExample-[PrettyTableViewCell observeValueForKeyPath:ofObject:change:context:](self=0x78661870, _cmd=0x01bda3bc, keyPath=0x00146538, object=0x78662070, change=0x789d0b10, context=0x00000000) + 808 at PrettyTableViewCell.m:477 frame #25: 0x019ab673 Foundation
NSKeyValueNotifyObserver + 359
frame #26: 0x019aa730 FoundationNSKeyValueDidChange + 462 frame #27: 0x019af485 Foundation
-[NSObject(NSKeyValueObserverNotification) didChangeValueForKey:] + 120
frame #28: 0x01a591ae Foundation_NSSetRectValueAndNotify + 192 frame #29: 0x000f4cc8 PrettyExample
-[PrettyTableViewCell observeValueForKeyPath:ofObject:change:context:](self=0x78661870, _cmd=0x01bda3bc, keyPath=0x00146538, object=0x78662070, change=0x789d0aa0, context=0x00000000) + 808 at PrettyTableViewCell.m:477
frame #30: 0x019ab673 FoundationNSKeyValueNotifyObserver + 359 frame #31: 0x019aa730 Foundation
NSKeyValueDidChange + 462
frame #32: 0x019af485 Foundation-[NSObject(NSKeyValueObserverNotification) didChangeValueForKey:] + 120 frame #33: 0x01a591ae Foundation
_NSSetRectValueAndNotify + 192
frame #34: 0x000f4cc8 PrettyExample-[PrettyTableViewCell observeValueForKeyPath:ofObject:change:context:](self=0x78661870, _cmd=0x01bda3bc, keyPath=0x00146538, object=0x78662070, change=0x789d0a30, context=0x00000000) + 808 at PrettyTableViewCell.m:477 frame #35: 0x019ab673 Foundation
NSKeyValueNotifyObserver + 359
frame #36: 0x019aa730 FoundationNSKeyValueDidChange + 462 frame #37: 0x019af485 Foundation
-[NSObject(NSKeyValueObserverNotification) didChangeValueForKey:] + 120
frame #38: 0x01a591ae Foundation_NSSetRectValueAndNotify + 192 frame #39: 0x000f4cc8 PrettyExample
-[PrettyTableViewCell observeValueForKeyPath:ofObject:change:context:](self=0x78661870, _cmd=0x01bda3bc, keyPath=0x00146538, object=0x78662070, change=0x789d09c0, context=0x00000000) + 808 at PrettyTableViewCell.m:477
- frame #14: 0x000f4cc8 PrettyExample
(lldb) f 72704
frame #72704: 0x000ebe2a PrettyExample`main(argc=1, argv=0xbff1459c) + 170 at main.m:16
13 int main(int argc, char *argv[])
14 {
15 @autoreleasepool {
-> 16 return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
17 }
18 }
(lldb)
damian-kolakowski commented
Removed PrettyExample.