[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [26721] trunk/blender/source/blender/gpu/ intern/gpu_buffers.c: partial fix for [#21036] crash with glsl shading

Campbell Barton ideasman42 at gmail.com
Mon Feb 8 22:19:16 CET 2010


Revision: 26721
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=26721
Author:   campbellbarton
Date:     2010-02-08 22:19:15 +0100 (Mon, 08 Feb 2010)

Log Message:
-----------
partial fix for [#21036] crash with glsl shading
copying UVs was doing a buffer overrun.

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	2010-02-08 21:13:33 UTC (rev 26720)
+++ trunk/blender/source/blender/gpu/intern/gpu_buffers.c	2010-02-08 21:19:15 UTC (rev 26721)
@@ -974,8 +974,8 @@
 GPUBuffer *GPU_buffer_uv( DerivedMesh *dm )
 {
 	DEBUG_VBO("GPU_buffer_uv\n");
-	if( DM_get_face_data_layer(dm, CD_MTFACE) != 0 )
-		return GPU_buffer_setup( dm, dm->drawObject, sizeof(float)*2*dm->drawObject->nelements, GL_ARRAY_BUFFER_ARB, 0, GPU_buffer_copy_uv);
+	if( DM_get_face_data_layer(dm, CD_MTFACE) != 0 ) /* was sizeof(float)*2 but caused buffer overrun  */
+		return GPU_buffer_setup( dm, dm->drawObject, sizeof(float)*3*dm->drawObject->nelements, GL_ARRAY_BUFFER_ARB, 0, GPU_buffer_copy_uv);
 	else
 		return 0;
 }





More information about the Bf-blender-cvs mailing list