アプリケーションで ARC を使用していて、次の理由で新しいクラッシュが発生しています。
malloc: *** error for object 0x17e9a5d0: double free
*** set a breakpoint in malloc_error_break to debug
それを理解するために、Zombie Objects を有効にしました。その理由は次のとおりです。
*** -[CFString release]: message sent to deallocated instance 0x15d183e0
私のコード:
Class myClass = NSClassFromString(classString);
SEL mySelector = NSSelectorFromString(selectorString);
NSString *arg = @"arg";
NSMethodSignature *sig = [myClass methodSignatureForSelector:mySelector];
NSInvocation * myInvocation = [NSInvocation invocationWithMethodSignature:sig];
[myInvocation setTarget: myClass];
[myInvocation setSelector: mySelector];
[myInvocation setArgument:&arg atIndex:2];
NSString *result = nil;
[myInvocation retainArguments];
[myInvocation invoke];
[myInvocation getReturnValue: &result];
NSLog(@" Result String : %@ ",result);
何が問題なのですか? どの CFString ?? 返信ありがとうございます。
編集:
オブジェクトNSString *result
が原因です。次のステップでこのエラーを修正するにはどうすればよいですか?