[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [48193] trunk/blender/source/blender/ compositor/operations/COM_ReadBufferOperation.cpp: Nullpointer exception happened when all input sockets of a (for example)

Jeroen Bakker j.bakker at atmind.nl
Fri Jun 22 15:24:50 CEST 2012


Revision: 48193
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=48193
Author:   jbakker
Date:     2012-06-22 13:24:43 +0000 (Fri, 22 Jun 2012)
Log Message:
-----------
Nullpointer exception happened when all input sockets of a (for example)
a translate node were connected with the same complex node (like lens
distortion).

Added a check to see if the list of buffers are available to resolve
this issue.

Modified Paths:
--------------
    trunk/blender/source/blender/compositor/operations/COM_ReadBufferOperation.cpp

Modified: trunk/blender/source/blender/compositor/operations/COM_ReadBufferOperation.cpp
===================================================================
--- trunk/blender/source/blender/compositor/operations/COM_ReadBufferOperation.cpp	2012-06-22 13:11:38 UTC (rev 48192)
+++ trunk/blender/source/blender/compositor/operations/COM_ReadBufferOperation.cpp	2012-06-22 13:24:43 UTC (rev 48193)
@@ -48,14 +48,21 @@
 }
 void ReadBufferOperation::executePixel(float *color, float x, float y, PixelSampler sampler, MemoryBuffer *inputBuffers[])
 {
-	MemoryBuffer *inputBuffer = inputBuffers[this->offset];
-	if (inputBuffer) {
-		if (sampler == COM_PS_NEAREST) {
-			inputBuffer->read(color, x, y);
+	if (inputBuffers) {
+		MemoryBuffer *inputBuffer = inputBuffers[this->offset];
+		if (inputBuffer) {
+			if (sampler == COM_PS_NEAREST) {
+				inputBuffer->read(color, x, y);
+			}
+			else {
+				inputBuffer->readCubic(color, x, y);
+			}
 		}
-		else {
-			inputBuffer->readCubic(color, x, y);
-		}
+	} else {
+		color[0] = 0.0f;
+		color[1] = 0.0f;
+		color[2] = 0.0f;
+		color[3] = 0.0f;
 	}
 }
 




More information about the Bf-blender-cvs mailing list