Hi

Just for the public record in case this affects anyone else, a bug exists in
QC such that if a patch
calls lockBufferRepresentationWithPixelFormat:colorSpace:forBounds and does
not produce image output, memory usage mounts perpetually proportional to
buffer size until eventually the host application crashes when memory runs
out. An execution method which triggers this looks like

- (BOOL) execute:(id<QCPlugInContext>)context atTime:(NSTimeInterval)time
withArguments:(NSDictionary*)arguments

{

if ([self didValueForInputKeyChange:@"inputImage"])

{

id <QCPlugInInputImageSource> input = self.inputImage;

if ([input lockBufferRepresentationWithPixelFormat:kQCPixelFormat
colorSpace:[input
shouldColorMatch] ? [context colorSpace] : [input imageColorSpace]
forBounds:[input
imageBounds]])

{

[input unlockBufferRepresentation];

}

}

self.outputString = @"zzz";

return YES;

}


Filed as Bug ID# 8508563. Example Xcode project, built plugin and
composition at http://kriss.cx/tom/elsewhere/bug/lockBufferRep_bug.zip

Cheers, Tom
 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Quartzcomposer-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/quartzcomposer-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to