[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [47451] trunk/blender/source/blender/gpu/ intern/gpu_buffers.c: Fix #31593: Every time I switch between edit and object mode, it crashes
Sergey Sharybin
sergey.vfx at gmail.com
Tue Jun 5 10:42:05 CEST 2012
Revision: 47451
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=47451
Author: nazgul
Date: 2012-06-05 08:41:53 +0000 (Tue, 05 Jun 2012)
Log Message:
-----------
Fix #31593: Every time I switch between edit and object mode, it crashes
Crash was caused by incorrect restoring OpenGL context due to some
weird bit operations used to indicate whether stuff like color arrays
is initialized resulting in some unpredictable results on different
platforms and drivers.
Modified Paths:
--------------
trunk/blender/source/blender/gpu/intern/gpu_buffers.c
Modified: trunk/blender/source/blender/gpu/intern/gpu_buffers.c
===================================================================
--- trunk/blender/source/blender/gpu/intern/gpu_buffers.c 2012-06-05 08:06:15 UTC (rev 47450)
+++ trunk/blender/source/blender/gpu/intern/gpu_buffers.c 2012-06-05 08:41:53 UTC (rev 47451)
@@ -1151,7 +1151,7 @@
glBindBufferARB(GL_ELEMENT_ARRAY_BUFFER_ARB, 0);
}
}
- GLStates &= !(GPU_BUFFER_VERTEX_STATE | GPU_BUFFER_NORMAL_STATE |
+ GLStates &= ~(GPU_BUFFER_VERTEX_STATE | GPU_BUFFER_NORMAL_STATE |
GPU_BUFFER_TEXCOORD_STATE | GPU_BUFFER_COLOR_STATE |
GPU_BUFFER_ELEMENT_STATE);
@@ -1191,7 +1191,7 @@
else {
if (GLStates & GPU_BUFFER_COLOR_STATE)
glDisableClientState(GL_COLOR_ARRAY);
- GLStates &= (!GPU_BUFFER_COLOR_STATE);
+ GLStates &= ~GPU_BUFFER_COLOR_STATE;
}
}
More information about the Bf-blender-cvs
mailing list