0

したがって、xcodeツールは、以下のコードにリークがあることを教えてくれます

imageRef = [[_originalGridView image] CGImage];
_width = CGImageGetWidth(imageRef);
_height = CGImageGetHeight(imageRef);

//leak?
pixelData = (NSData*)CGDataProviderCopyData(CGImageGetDataProvider(imageRef));

rawData = (unsigned char*) [pixelData bytes];

問題は、pixelDataをリリースしようとするとクラッシュすることです。ここでは、少し途方に暮れています。私が現在行っていることをリークして行う別の方法がありますか、それとも私がしていない何かを解放することになっていますか?

編集:ピクセルデータをリリースする必要があると言っているすべての人に、これは私が試したときに起こることです

malloc:*オブジェクト0x547b000のエラー:解放されるポインターが割り当てられませんでした*デバッグするためにmalloc_error_breakにブレークポイントを設定します

4

2 に答える 2

0

最初に保持する必要があると思います。その後、使用後 に解放することを忘れないrawDataで pixelData を解放できます。CFRelease(pixelData)rawData

于 2012-11-30T04:31:21.930 に答える