summaryrefslogtreecommitdiff
path: root/tests/OffscreenContext.mm
diff options
context:
space:
mode:
authorMarius Kintel <marius@kintel.net>2011-08-04 16:26:49 (GMT)
committerMarius Kintel <marius@kintel.net>2011-08-04 16:26:49 (GMT)
commitdbb0b3442b1fa80889053117152d972bd0800ae7 (patch)
tree7b881f533d58af5ac019fb35f03eb4a30acd461a /tests/OffscreenContext.mm
parentef39e400f83a898453b56e562a6b9747d69cdcbd (diff)
Write output PNG to stdout
Diffstat (limited to 'tests/OffscreenContext.mm')
-rw-r--r--tests/OffscreenContext.mm15
1 files changed, 9 insertions, 6 deletions
diff --git a/tests/OffscreenContext.mm b/tests/OffscreenContext.mm
index c8d0df7..9a6a5e2 100644
--- a/tests/OffscreenContext.mm
+++ b/tests/OffscreenContext.mm
@@ -166,14 +166,16 @@ bool save_framebuffer(OffscreenContext *ctx, const char *filename)
std::cerr << "Unable to create file URL ref.";
return false;
}
+ CGDataConsumerRef dataconsumer = CGDataConsumerCreateWithURL(fileURL);
+
CFIndex fileImageIndex = 1;
CFMutableDictionaryRef fileDict = NULL;
- CFStringRef fileUTType = kUTTypeJPEG;
+ CFStringRef fileUTType = kUTTypePNG;
// Create an image destination opaque reference for authoring an image file
- CGImageDestinationRef imageDest = CGImageDestinationCreateWithURL(fileURL,
- fileUTType,
- fileImageIndex,
- fileDict);
+ CGImageDestinationRef imageDest = CGImageDestinationCreateWithDataConsumer(dataconsumer,
+ fileUTType,
+ fileImageIndex,
+ fileDict);
if (!imageDest) {
std::cerr << "Unable to create CGImageDestinationRef.";
return false;
@@ -190,10 +192,11 @@ bool save_framebuffer(OffscreenContext *ctx, const char *filename)
free(flippedBuffer);
free(bufferData);
CFRelease(imageDest);
+ CFRelease(dataconsumer);
CFRelease(fileURL);
CFRelease(fname);
CFRelease(imageProps);
- CGColorSpaceRelease( colorSpace );
+ CGColorSpaceRelease(colorSpace);
CGImageRelease(imageRef);
return true;
}
contact: Jan Huwald // Impressum