[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [50080] trunk/blender/source/blender: fix for bug with render slots - where the menus wouldnt only show layers from the last render which could be meaningless in different render slots .

Campbell Barton ideasman42 at gmail.com
Tue Aug 21 13:10:16 CEST 2012


Revision: 50080
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=50080
Author:   campbellbarton
Date:     2012-08-21 11:10:16 +0000 (Tue, 21 Aug 2012)
Log Message:
-----------
fix for bug with render slots - where the menus wouldnt only show layers from the last render which could be meaningless in different render slots.

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/intern/image.c
    trunk/blender/source/blender/editors/space_image/image_buttons.c

Modified: trunk/blender/source/blender/blenkernel/intern/image.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/image.c	2012-08-21 10:45:01 UTC (rev 50079)
+++ trunk/blender/source/blender/blenkernel/intern/image.c	2012-08-21 11:10:16 UTC (rev 50080)
@@ -2145,7 +2145,9 @@
 
 void BKE_image_release_renderresult(Scene *scene, Image *ima)
 {
-	if (ima->rr) ;
+	if (ima->rr) {
+		/* pass */
+	}
 	else if (ima->type == IMA_TYPE_R_RESULT) {
 		if (ima->render_slot == ima->last_render_slot)
 			RE_ReleaseResult(RE_GetRender(scene->id.name));

Modified: trunk/blender/source/blender/editors/space_image/image_buttons.c
===================================================================
--- trunk/blender/source/blender/editors/space_image/image_buttons.c	2012-08-21 10:45:01 UTC (rev 50079)
+++ trunk/blender/source/blender/editors/space_image/image_buttons.c	2012-08-21 11:10:16 UTC (rev 50080)
@@ -681,10 +681,12 @@
 			}
 			else if (ima->type == IMA_TYPE_R_RESULT) {
 				/* browse layer/passes */
-				Render *re = RE_GetRender(scene->id.name);
-				RenderResult *rr = RE_AcquireResultRead(re);
+				RenderResult *rr;
+
+				/* use BKE_image_acquire_renderresult  so we get the correct slot in the menu */
+				rr = BKE_image_acquire_renderresult(scene, ima);
 				uiblock_layer_pass_arrow_buttons(layout, rr, iuser, &ima->render_slot);
-				RE_ReleaseResult(re);
+				BKE_image_release_renderresult(scene, ima);
 			}
 		}
 		else {
@@ -867,16 +869,16 @@
 void uiTemplateImageLayers(uiLayout *layout, bContext *C, Image *ima, ImageUser *iuser)
 {
 	Scene *scene = CTX_data_scene(C);
-	Render *re;
-	RenderResult *rr;
 
 	/* render layers and passes */
 	if (ima && iuser) {
 		const float dpi_fac = UI_DPI_FAC;
-		re = RE_GetRender(scene->id.name);
-		rr = RE_AcquireResultRead(re);
+		RenderResult *rr;
+
+		/* use BKE_image_acquire_renderresult  so we get the correct slot in the menu */
+		rr = BKE_image_acquire_renderresult(scene, ima);
 		uiblock_layer_pass_buttons(layout, rr, iuser, 160 * dpi_fac, (ima->type == IMA_TYPE_R_RESULT) ? &ima->render_slot : NULL);
-		RE_ReleaseResult(re);
+		BKE_image_release_renderresult(scene, ima);
 	}
 }
 




More information about the Bf-blender-cvs mailing list