|
From: JR S. <sc...@we...> - 2013-03-24 20:33:39
|
To follow up on my own question, I resolved this. This was tricky,
since the debugger was of limited use as one cannot trace into native code.
The crash happens in UIApplication:didFinishLaunching with options, but
BEFORE hitting the "Java" version of this subroutine. It actually
happens while trying to "wrap" the NSDictionary "launchOptions"
argument, which explains why this only occurs when launching from Mail,
and not from the home screen.
The crash is due to a "bug" (really, omission) in the WRAPPER_CREATOR of
NSDictionary. See patch below:
--- src/xmlvm2c/lib/wrapper/org_xmlvm_ios_NSDictionary.m (revision 1)
+++ src/xmlvm2c/lib/wrapper/org_xmlvm_ios_NSDictionary.m (working copy)
@@ -17,7 +17,7 @@
static JAVA_OBJECT __WRAPPER_CREATOR(NSObject* obj)
{
- if([obj class] == [NSDictionary class] || ([NSStringFromClass([obj
class]) isEqual:@"__NSCFDictionary"]))
+ if([obj class] == [NSDictionary class] || ([NSStringFromClass([obj
class]) isEqual:@"__NSCFDictionary"]) || ([NSStringFromClass([obj
class]) isEqual:@"__NSDictionaryM"]))
{
[obj retain];
JAVA_OBJECT jobj = __NEW_org_xmlvm_ios_NSDictionary();
JR
--
J.R. Schmidt
WebMO, LLC
Fax: (734) 418-1077
E-mail: sc...@we...
http://www.webmo.net
|