oops, that was a bit sloppy. Also added a missing free
authorDiederick Niehorster <dcnieho@gmail.com>
Sat, 17 Mar 2012 02:23:03 +0000 (02:23 +0000)
committerDiederick Niehorster <dcnieho@gmail.com>
Sat, 17 Mar 2012 02:23:03 +0000 (02:23 +0000)
git-svn-id: svn+ssh://svn.code.sf.net/p/freeglut/code/trunk/freeglut/freeglut@1169 7f0cb862-5218-0410-a997-914c9d46530a

src/fg_geometry.c

index 6146ea4..df3f298 100644 (file)
@@ -695,15 +695,18 @@ static void fghCube( GLdouble dSize, GLboolean useWireMode )
         /* Need to build new vertex list containing vertices for cube of different size */
         GLdouble *vertices = malloc(CUBE_VERT_ELEM_PER_OBJ * sizeof(GLdouble));
         /* Bail out if memory allocation fails, fgError never returns */
-        if (!(*vertices))
+        if (!vertices)
         {
-            free(*vertices);
+            free(vertices);
             fgError("Failed to allocate memory in fghCube");
         }
         for (i=0; i<CUBE_VERT_ELEM_PER_OBJ; i++)
             vertices[i] = dSize*cube_verts[i];
 
         fghDrawGeometry(GL_TRIANGLES,vertices  ,cube_norms,cube_edgeFlags,CUBE_VERT_PER_OBJ_TRI,useWireMode);
+
+        /* cleanup allocated memory */
+        free(vertices);
     }
     else
         fghDrawGeometry(GL_TRIANGLES,cube_verts,cube_norms,cube_edgeFlags,CUBE_VERT_PER_OBJ_TRI,useWireMode);
@@ -728,10 +731,10 @@ static void fghSierpinskiSponge ( int numLevels, GLdouble offset[3], GLdouble sc
         vertices = malloc(numVert*3 * sizeof(GLdouble));
         normals  = malloc(numVert*3 * sizeof(GLdouble));
         /* Bail out if memory allocation fails, fgError never returns */
-        if (!(*vertices) || !(*normals))
+        if (!vertices || !normals)
         {
-            free(*vertices);
-            free(*normals);
+            free(vertices);
+            free(normals);
             fgError("Failed to allocate memory in fghSierpinskiSponge");
         }