[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [54098] trunk/blender/source/blender/ windowmanager/intern/wm_subwindow.c: Bugfix #33989

Ton Roosendaal ton at blender.org
Fri Jan 25 11:17:09 CET 2013


Revision: 54098
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=54098
Author:   ton
Date:     2013-01-25 10:17:06 +0000 (Fri, 25 Jan 2013)
Log Message:
-----------
Bugfix #33989

Transparent region drawing and blend broke by commit 53919 5 days ago.
This commit reverts the change.

The claim in previous commit "edited code for readability" is quite
disputable :) The error is hard to notice even.

I also like to emphasize that people should check with owners for code
before committing changes! Cleaning code is first a job for maintainers.

Modified Paths:
--------------
    trunk/blender/source/blender/windowmanager/intern/wm_subwindow.c

Modified: trunk/blender/source/blender/windowmanager/intern/wm_subwindow.c
===================================================================
--- trunk/blender/source/blender/windowmanager/intern/wm_subwindow.c	2013-01-25 09:57:17 UTC (rev 54097)
+++ trunk/blender/source/blender/windowmanager/intern/wm_subwindow.c	2013-01-25 10:17:06 UTC (rev 54098)
@@ -241,8 +241,7 @@
 
 void wmSubWindowScissorSet(wmWindow *win, int swinid, rcti *srct)
 {
-	int x, y, width, height;
-
+	int width, height;
 	_curswin = swin_from_swinid(win, swinid);
 	
 	if (_curswin == NULL) {
@@ -251,33 +250,26 @@
 	}
 	
 	win->curswin = _curswin;
-
 	_curwindow = win;
 	
-	x      = _curswin->winrct.xmin;
-	y      = _curswin->winrct.ymin;
 	width  = BLI_rcti_size_x(&_curswin->winrct) + 1;
 	height = BLI_rcti_size_y(&_curswin->winrct) + 1;
-
-	glViewport(x, y, width, height);
-
+	glViewport(_curswin->winrct.xmin, _curswin->winrct.ymin, width, height);
+	
 	if (srct) {
-		x      = srct->xmin;
-		y      = srct->ymin;
-		width  = BLI_rcti_size_x(srct) + 1;
-		height = BLI_rcti_size_y(srct) + 1;
+		int width  = BLI_rcti_size_x(srct) + 1; /* only here */
+		int height = BLI_rcti_size_y(srct) + 1;
+		glScissor(srct->xmin, srct->ymin, width, height);
 	}
-    
-    glScissor(x, y, width, height);
+	else
+		glScissor(_curswin->winrct.xmin, _curswin->winrct.ymin, width, height);
 	
 	wmOrtho2(-GLA_PIXEL_OFS, (float)width - GLA_PIXEL_OFS, -GLA_PIXEL_OFS, (float)height - GLA_PIXEL_OFS);
-
-	glLoadIdentity(); /* reset MODELVIEW */
-
-	glFlush(); /* XXX: jwilkins - is this really needed here? */
+	glLoadIdentity();
+	
+	glFlush();
 }
 
-
 /* enable the WM versions of opengl calls */
 void wmSubWindowSet(wmWindow *win, int swinid)
 {




More information about the Bf-blender-cvs mailing list