[Bf-blender-cvs] [235f1fe] master: Fix opengl render preview in image editor broken

Antony Riakiotakis noreply at git.blender.org
Wed Apr 8 12:50:24 CEST 2015


Commit: 235f1feaf4f28f0d3bf3b608ba447b9b0ef5aedc
Author: Antony Riakiotakis
Date:   Wed Apr 8 12:49:39 2015 +0200
Branches: master
https://developer.blender.org/rB235f1feaf4f28f0d3bf3b608ba447b9b0ef5aedc

Fix opengl render preview in image editor broken

During multiview, invalidation of the display imbuf of the preview image
was eaten by code eating elves.

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

M	source/blender/editors/render/render_opengl.c

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

diff --git a/source/blender/editors/render/render_opengl.c b/source/blender/editors/render/render_opengl.c
index b59fd10..9548b4b 100644
--- a/source/blender/editors/render/render_opengl.c
+++ b/source/blender/editors/render/render_opengl.c
@@ -493,6 +493,8 @@ static void screen_opengl_render_apply(OGLRender *oglrender)
 	RenderResult *rr;
 	RenderView *rv;
 	int view_id;
+	ImBuf *ibuf;
+	void *lock;
 
 	rr = RE_AcquireResultRead(oglrender->re);
 	for (rv = rr->views.first, view_id = 0; rv; rv = rv->next, view_id++) {
@@ -503,6 +505,12 @@ static void screen_opengl_render_apply(OGLRender *oglrender)
 
 	RE_ReleaseResult(oglrender->re);
 
+	ibuf = BKE_image_acquire_ibuf(oglrender->ima, &oglrender->iuser, &lock);
+	if (ibuf) {
+		ibuf->userflags |= IB_DISPLAY_BUFFER_INVALID;
+	}
+	BKE_image_release_ibuf(oglrender->ima, ibuf, lock);
+
 	if (oglrender->write_still) {
 		screen_opengl_render_write(oglrender);
 	}




More information about the Bf-blender-cvs mailing list