[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [52761] trunk/blender/source/blender: Fix #33402: Compositor crashes when drag-dropping multilayer exr

Sergey Sharybin sergey.vfx at gmail.com
Tue Dec 4 09:10:58 CET 2012


Revision: 52761
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=52761
Author:   nazgul
Date:     2012-12-04 08:10:53 +0000 (Tue, 04 Dec 2012)
Log Message:
-----------
Fix #33402: Compositor crashes when drag-dropping multilayer exr

There was a missing image reload signal in node creation by drag-dropping,
which lead to incorrectly set image type.

Also fixed misusage of IMB_freeImBuf used to release buffer acquired by
BKE_image_acquire_ibuf.

Modified Paths:
--------------
    trunk/blender/source/blender/compositor/operations/COM_ImageOperation.cpp
    trunk/blender/source/blender/editors/space_node/node_add.c

Modified: trunk/blender/source/blender/compositor/operations/COM_ImageOperation.cpp
===================================================================
--- trunk/blender/source/blender/compositor/operations/COM_ImageOperation.cpp	2012-12-04 07:48:09 UTC (rev 52760)
+++ trunk/blender/source/blender/compositor/operations/COM_ImageOperation.cpp	2012-12-04 08:10:53 UTC (rev 52761)
@@ -109,7 +109,7 @@
 		resolution[1] = stackbuf->y;
 	}
 
-	IMB_freeImBuf(stackbuf);
+	BKE_image_release_ibuf(this->m_image, stackbuf, NULL);
 }
 
 void ImageOperation::executePixel(float output[4], float x, float y, PixelSampler sampler)

Modified: trunk/blender/source/blender/editors/space_node/node_add.c
===================================================================
--- trunk/blender/source/blender/editors/space_node/node_add.c	2012-12-04 07:48:09 UTC (rev 52760)
+++ trunk/blender/source/blender/editors/space_node/node_add.c	2012-12-04 08:10:53 UTC (rev 52761)
@@ -386,6 +386,9 @@
 	node->id = (ID *)ima;
 	id_us_plus(node->id);
 
+	BKE_image_signal(ima, NULL, IMA_SIGNAL_RELOAD);
+	WM_event_add_notifier(C, NC_IMAGE | NA_EDITED, ima);
+
 	snode_notify(C, snode);
 	snode_dag_update(C, snode);
 




More information about the Bf-blender-cvs mailing list