2011-12-05 8 views
0

このコードはパーサーDidendElementにあります。EXC_BAD_ACCESS ARCでデリゲートを使用するNSXMLParser

[self setImageThumbnailLink:[NSMutableString stringWithString:imageLink]]; 
    if([_delegate respondsToSelector:@selector(receiveImageLink:withParser:withParameter:)]){ 

     [_delegate receiveImageLink:[self imageThumbnailLink] withParser:nil withParameter:parameterPassed]; 
    }   
    else{    
     [NSException raise:NSInternalInconsistencyException 
        format:@"Delegate doesn't respond to receiveItems:"]; 
    } 

場合コードリーチ[_delegate receiveImageLink:[自己imageThumbnailLink] withParser:withParameterゼロ:parameterPassed]。

EXC_BAD_ACCESSが発生します。私は各パラメータをゼロにしようとすることで何が問題なのか試しました。 EXC_BAD_ACCESSは、[self imageThumbnailLink]が代理人に渡されたときに発生します。 どうすれば解決できますか? imageThumbnailLinkに[非原子、強]を使用します。 NSMutableStringです。 私はこのコードを使用しています(変数を使用していません):正常です。 のみ 現在の言語:

[_delegate receiveImageLink:@"http://www.....flower.jpg" withParser:nil withParameter:parameterPassed]; 

エラーメッセージコンソールにありがとう自動;現在objective-c(gdb)です。

これは、スタックトレースです:

おそらく[self imageThumbnailLink]が悪いかparameterPassedである:ここでは、完全なエラーメッセージを欠く error message (no error message in console)

+0

正確かつ完全なエラーメッセージをコンソールから投稿してください。 – zaph

+0

私はちょうどこのことについてnoobを使っていますが、おそらく、最初の行(stringWithFormatではなくstringWithString)で[self setImageThumbnailLink:[NSMutableString stringWithString:imageLink]]を試してみてください。 –

+0

は既にstringWithStringでそれを変更します。それでもEXC_Bad_access。 –

答えて

0

は最良の推測です。デバッグのために二つに声明を分離してみてください。 例:一般的に

NSLog(@"parameterPassed: %@", parameterPassed); 
NSString *imageLink = [self imageThumbnailLink]; 
NSLog(@"imageLink: %@", imageLink); 
[_delegate receiveImageLink:imageLink withParser:nil withParameter:parameterPassed]; 

複合文の成分を分離するエラーをデバッグしようとすると良い最初のステップです。

+0

imagelinkがコンソールに表示され、間違いなくゼロになっています。 exc_bad_access :(。コンソールにエラーメッセージはありません。現在の言語:auto;現在のobjective-c (gdb)。exc_bad_accessが特定のアドレスを指しています。 –

+0

parameterPassedはiがイメージリンクをハードコードしました [_delegate receiveImageLink:@ "http://www.flower.jpg" withParser:nil withParameter:parameterPassed]; それは正常に動作しています 私の推測では、imageLinkは既にリリースしています弧で –

+0

おそらく最初の行に画像リンクを設定するときにstringWithFormatの代わりにstringWithStringを試してみるか? –

関連する問題