alskipp/ASValueTrackingSlider

CALayerInvalidGeometry

Closed this issue · 5 comments

Hi @alskipp,

Following the 0.9.1 update, I start to experience crash. Here is the output:


2014-05-08 16:56:34.278 TSA[12501:60b] *** Terminating app due to uncaught exception 'CALayerInvalidGeometry', reason: 'CALayer position contains NaN: [nan 0]'
*** First throw call stack:
(
    0   CoreFoundation                      0x00000001031de495 __exceptionPreprocess + 165
    1   libobjc.A.dylib                     0x0000000102db599e objc_exception_throw + 43
    2   CoreFoundation                      0x00000001031de2ad +[NSException raise:format:] + 205
    3   QuartzCore                          0x0000000101647cf6 _ZN2CA5Layer12set_positionERKNS_4Vec2IdEEb + 158
    4   QuartzCore                          0x0000000101647e77 -[CALayer setPosition:] + 44
    5   QuartzCore                          0x0000000101648544 -[CALayer setFrame:] + 856
    6   TSA                                 0x000000010010c36c -[ASValuePopUpView setArrowCenterOffset:] + 700
    7   TSA                                 0x000000010010fe00 -[ASValueTrackingSlider adjustPopUpViewFrame] + 688
    8   TSA                                 0x000000010010fa0b -[ASValueTrackingSlider positionAndUpdatePopUpView] + 43
    9   TSA                                 0x000000010010f8de -[ASValueTrackingSlider setup] + 1070
    10  TSA                                 0x000000010010e5e0 -[ASValueTrackingSlider initWithCoder:] + 160
    11  UIKit                               0x0000000101b4359c -[UIClassSwapper initWithCoder:] + 202
    12  UIKit                               0x0000000101c7f794 UINibDecoderDecodeObjectForValue + 678
    13  UIKit                               0x0000000101c7f95c UINibDecoderDecodeObjectForValue + 1134
    14  UIKit                               0x0000000101c7f4df -[UINibDecoder decodeObjectForKey:] + 94
    15  UIKit                               0x000000010192f956 -[UIView initWithCoder:] + 815
    16  UIKit                               0x0000000101c7f794 UINibDecoderDecodeObjectForValue + 678
    17  UIKit                               0x0000000101c7f95c UINibDecoderDecodeObjectForValue + 1134
    18  UIKit                               0x0000000101c7f4df -[UINibDecoder decodeObjectForKey:] + 94
    19  UIKit                               0x000000010192f956 -[UIView initWithCoder:] + 815
    20  UIKit                               0x0000000101b078a2 -[UITableViewCell initWithCoder:] + 68
    21  UIKit                               0x0000000101b4359c -[UIClassSwapper initWithCoder:] + 202
    22  UIKit                               0x0000000101c7f794 UINibDecoderDecodeObjectForValue + 678
    23  UIKit                               0x0000000101c7f4df -[UINibDecoder decodeObjectForKey:] + 94
    24  UIKit                               0x0000000101b4316c -[UIRuntimeConnection initWithCoder:] + 109
    25  UIKit                               0x0000000101c7f794 UINibDecoderDecodeObjectForValue + 678
    26  UIKit                               0x0000000101c7f95c UINibDecoderDecodeObjectForValue + 1134
    27  UIKit                               0x0000000101c7f4df -[UINibDecoder decodeObjectForKey:] + 94
    28  UIKit                               0x0000000101b427b6 -[UINib instantiateWithOwner:options:] + 891
    29  UIKit                               0x00000001019b144b -[UITableView _dequeueReusableViewOfType:withIdentifier:] + 302
    30  UIKit                               0x00000001019b16b6 -[UITableView dequeueReusableCellWithIdentifier:forIndexPath:] + 44
    31  TSA                                 0x0000000100033984 -[DetailTableViewController tableView:cellForRowAtIndexPath:] + 7876
    32  UIKit                               0x00000001019bbf8a -[UITableView _createPreparedCellForGlobalRow:withIndexPath:] + 348
    33  UIKit                               0x00000001019a1d5b -[UITableView _updateVisibleCellsNow:] + 2337
    34  UIKit                               0x00000001019b3721 -[UITableView layoutSubviews] + 207
    35  UIKit                               0x0000000101947993 -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 354
    36  QuartzCore                          0x0000000101650802 -[CALayer layoutSublayers] + 151
    37  QuartzCore                          0x0000000101645369 _ZN2CA5Layer16layout_if_neededEPNS_11TransactionE + 363
    38  QuartzCore                          0x00000001016451ea _ZN2CA5Layer28layout_and_display_if_neededEPNS_11TransactionE + 24
    39  QuartzCore                          0x00000001015b8fb8 _ZN2CA7Context18commit_transactionEPNS_11TransactionE + 252
    40  QuartzCore                          0x00000001015ba030 _ZN2CA11Transaction6commitEv + 394
    41  QuartzCore                          0x00000001015ba69d _ZN2CA11Transaction17observer_callbackEP19__CFRunLoopObservermPv + 89
    42  CoreFoundation                      0x00000001031a9dc7 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 23
    43  CoreFoundation                      0x00000001031a9d37 __CFRunLoopDoObservers + 391
    44  CoreFoundation                      0x0000000103189522 __CFRunLoopRun + 946
    45  CoreFoundation                      0x0000000103188d83 CFRunLoopRunSpecific + 467
    46  GraphicsServices                    0x0000000104becf04 GSEventRunModal + 161
    47  UIKit                               0x00000001018e7e33 UIApplicationMain + 1010
    48  TSA                                 0x000000010002ac33 main + 115
    49  libdyld.dylib                       0x00000001037635fd start + 1
    50  ???                                 0x0000000000000001 0x0 + 1
)
libc++abi.dylib: terminating with uncaught exception of type NSException

Do you have any idea of what's going on?

It is currently working fine with 0.9.0

Hi @aybar I believe this is likely the same issue as #18

I've just updated the master branch which I believe should fix the issue (new podspec hasn't been released yet). Could you try the current master, or the quick fix I posted in #18 to see if this fixes the crash for you?

Thanks,
Al

Oh, thanks! With master branch it is working ;)

Brilliant, that's a relief! I'll update the podspec later today. Thanks for raising the issue.

Al

By the way, current master branch introduces a new feature:

@protocol ASValueTrackingSliderDataSource <NSObject>
- (NSString *)slider:(ASValueTrackingSlider *)slider stringForValue:(float)value;
@end

It allows you to supply custom NSStrings to display in the popUpView - the example app gives a demonstration.

wow, nice function! thanks for the impressive work!!