[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [28649] branches/render25/source/blender/ imbuf/intern/openexr/openexr_api.cpp: More exception handling for OpenEXR, to fix a crash when reading

Brecht Van Lommel brecht at blender.org
Fri May 7 14:01:32 CEST 2010


Revision: 28649
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=28649
Author:   blendix
Date:     2010-05-07 14:01:32 +0200 (Fri, 07 May 2010)

Log Message:
-----------
More exception handling for OpenEXR, to fix a crash when reading
back tiles from a cancelled render.

Modified Paths:
--------------
    branches/render25/source/blender/imbuf/intern/openexr/openexr_api.cpp

Modified: branches/render25/source/blender/imbuf/intern/openexr/openexr_api.cpp
===================================================================
--- branches/render25/source/blender/imbuf/intern/openexr/openexr_api.cpp	2010-05-07 11:21:05 UTC (rev 28648)
+++ branches/render25/source/blender/imbuf/intern/openexr/openexr_api.cpp	2010-05-07 12:01:32 UTC (rev 28649)
@@ -588,7 +588,12 @@
 													echan->xstride*sizeof(float), echan->ystride*sizeof(float)));
 		
 		data->ofile->setFrameBuffer (frameBuffer);
-		data->ofile->writePixels (data->height);	
+		try {
+			data->ofile->writePixels (data->height);	
+		}
+		catch (const std::exception &exc) {
+			std::cerr << "OpenEXR-writePixels: ERROR: " << exc.what() << std::endl;
+		}
 	}
 	else {
 		printf("Error: attempt to save MultiLayer without layers.\n");
@@ -611,7 +616,13 @@
 	}
 	
 	data->ifile->setFrameBuffer (frameBuffer);
-	data->ifile->readPixels (0, data->height-1);	
+
+	try {
+		data->ifile->readPixels (0, data->height-1);	
+	}
+	catch (const std::exception &exc) {
+		std::cerr << "OpenEXR-readPixels: ERROR: " << exc.what() << std::endl;
+	}
 }
 
 void IMB_exr_multilayer_convert(void *handle, void *base,  





More information about the Bf-blender-cvs mailing list