[Bf-blender-cvs] [351d6d1] master: Fix image save ignoring options

Campbell Barton noreply at git.blender.org
Thu Jan 14 09:03:54 CET 2016


Commit: 351d6d18aae431372933e6a024413a63ad976009
Author: Campbell Barton
Date:   Thu Jan 14 18:51:48 2016 +1100
Branches: master
https://developer.blender.org/rB351d6d18aae431372933e6a024413a63ad976009

Fix image save ignoring options

Saving an image didn't un-set previously enabled options.
(saving 16bit png as 8 bit didn't work for eg).

===================================================================

M	source/blender/blenkernel/intern/image.c

===================================================================

diff --git a/source/blender/blenkernel/intern/image.c b/source/blender/blenkernel/intern/image.c
index 7eea534..55cbf13 100644
--- a/source/blender/blenkernel/intern/image.c
+++ b/source/blender/blenkernel/intern/image.c
@@ -2174,6 +2174,9 @@ void BKE_imbuf_write_prepare(ImBuf *ibuf, const ImageFormatData *imf)
 	char compress = imf->compress;
 	char quality = imf->quality;
 
+	/* initialize all from image format */
+	ibuf->foptions.flag = 0;
+
 	if (imtype == R_IMF_IMTYPE_IRIS) {
 		ibuf->ftype = IMB_FTYPE_IMAGIC;
 	}
@@ -2214,7 +2217,6 @@ void BKE_imbuf_write_prepare(ImBuf *ibuf, const ImageFormatData *imf)
 		ibuf->ftype = IMB_FTYPE_OPENEXR;
 		if (imf->depth == R_IMF_CHAN_DEPTH_16)
 			ibuf->foptions.flag |= OPENEXR_HALF;
-		ibuf->foptions.flag &= ~OPENEXR_COMPRESS;
 		ibuf->foptions.flag |= (imf->exr_codec & OPENEXR_COMPRESS);
 
 		if (!(imf->flag & R_IMF_FLAG_ZBUF))
@@ -2334,6 +2336,7 @@ int BKE_imbuf_write_as(ImBuf *ibuf, const char *name, ImageFormatData *imf,
 		/* note that we are not restoring _all_ settings */
 		ibuf->planes = ibuf_back.planes;
 		ibuf->ftype =  ibuf_back.ftype;
+		ibuf->foptions =  ibuf_back.foptions;
 	}
 
 	return ok;




More information about the Bf-blender-cvs mailing list