CGImage утечки, независимо от того, как я CGRelease - PullRequest
2 голосов
/ 19 декабря 2011

контекст представляет собой плагин Quartz Composer, в котором я хочу создать CGImage вне кадра камеры.Это соответствующий код

id<QCPlugInInputImageSource> inputImage_ = self.inputImage;
CGColorSpaceRef colorSpace = [inputImage_ imageColorSpace];

и более поздних

dataProvider = CGDataProviderCreateWithData(NULL, 
                                            [inputImage_ bufferBaseAddress], 
                                            [inputImage_ bufferPixelsHigh] * [inputImage_ bufferBytesPerRow], 
                                            NULL);
cgImage = CGImageCreate(
                       [inputImage_ bufferPixelsWide], 
                       [inputImage_ bufferPixelsHigh], 8, 
                       (pixelFormat == QCPlugInPixelFormatI8 ? 8 : 32), 
                       [inputImage_ bufferBytesPerRow], colorSpace, 
                       (pixelFormat == QCPlugInPixelFormatI8 ? 0 : 
                       kCGImageAlphaPremultipliedFirst | kCGBitmapByteOrder32Host), 
                       dataProvider, NULL, false, kCGRenderingIntentDefault);
CGDataProviderRelease(dataProvider);
CGImageRelease(cgImage);

Если я удаляю cgImage create и release, у меня нет утечки.Утечка происходит только в режиме предварительного просмотра Quartz Composer (который не является сборщиком мусора, что может что-то значить).Заранее спасибо

...