After updating to the iOS 4.2 SDK, I receive the following exception in my app:
Terminating app due to uncaught exception 'CALayerInvalidGeometry', reason: 'CALayer position contains NaN: [nan 22]'
(Please see below for the copy of call stack)
Details:
'- UIWebView
with video tag is inside UIScrollView
'- Video can play inside UIWebView
, but when tried to zoom in, and use either zoom-out or done button from the player, the app crashes with the said exception.
This doesn't happen on SDK 3.2
*** Call stack at first throw:
(
0 CoreFoundation 0x01150be9 __exceptionPreprocess + 185
1 libobjc.A.dylib 0x012a55c2 objc_exception_throw + 47
2 CoreFoundation 0x01109628 +[NSException raise:format:arguments:] + 136
3 CoreFoundation 0x0110959a +[NSException raise:format:] + 58
4 QuartzCore 0x0200996a _ZL18CALayerSetPositionP7CALayerRKN2CA4Vec2IdEEb + 177
5 QuartzCore 0x020098b5 -[CALayer setPosition:] + 42
6 QuartzCore 0x020097cc -[CALayer setFrame:] + 763
7 UIKit 0x0030d307 -[UIView(Geometry) setFrame:] + 255
8 UIKit 0x003e6add -[UISlider setFrame:] + 166
9 MediaPlayer 0x00f0faee -[MPDetailSlider setFrame:] + 78
10 MediaPlayer 0x00f267b7 -[MPWildcatFullScreenVideoOverlay layoutSubviews] + 1280
11 QuartzCore 0x0200e451 -[CALayer layoutSublayers] + 181
12 QuartzCore 0x0200e17c CALayerLayoutIfNeeded + 220
13 QuartzCore 0x0200737c _ZN2CA7Context18commit_transactionEPNS_11TransactionE + 310
14 QuartzCore 0x020070d0 _ZN2CA11Transaction6commitEv + 292
15 QuartzCore 0x020377d5 _ZN2CA11Transaction17observer_callbackEP19__CFRunLoopObservermPv + 99
16 CoreFoundation 0x01131fbb __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 27
17 CoreFoundation 0x010c70e7 __CFRunLoopDoObservers + 295
18 CoreFoundation 0x0108fbd7 __CFRunLoopRun + 1575
19 CoreFoundation 0x0108f240 CFRunLoopRunSpecific + 208
20 CoreFoundation 0x0108f161 CFRunLoopRunInMode + 97
21 GraphicsServices 0x01a85268 GSEventRunModal + 217
22 GraphicsServices 0x01a8532d GSEventRun + 115
23 UIKit 0x002e642e UIApplicationMain + 1160
24 ecom 0x000022c0 main + 102
25 ecom 0x00002251 start + 53
)
terminate called after throwing an instance of 'NSException'
Since iOS 4.2 there seems to be an issue with the calculations of the frame size for the slider inside the MoviePlayer.
If the width of the frame is set between 143.0 and 235.0 this exception occurs.
I was seeing a similar issue with my UIScrollView. I noticed this warning in the iOS docs:
Important: You should not embed UIWebView or UITableView objects in UIScrollView objects. If you do so, unexpected behavior can result because touch events for the two objects can be mixed up and wrongly handled.
I had a UITextView embedded within the scrollView. Removing that fixed the issue for me.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With