From a9814049da9fd7bca03a2b7b16d7970a77ef460b Mon Sep 17 00:00:00 2001 From: Vinson Lee Date: Sun, 22 Nov 2009 01:45:53 -0500 Subject: glu: Fix memory leak in __gl_meshMakeEdge. (cherry picked from commit d3b4c99c703f70a9d0e715a97e52672f7f8fc980) --- src/libtess/mesh.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/libtess/mesh.c b/src/libtess/mesh.c index ae861f8..95f87cd 100644 --- a/src/libtess/mesh.c +++ b/src/libtess/mesh.c @@ -284,7 +284,12 @@ GLUhalfEdge *__gl_meshMakeEdge( GLUmesh *mesh ) } e = MakeEdge( &mesh->eHead ); - if (e == NULL) return NULL; + if (e == NULL) { + memFree(newVertex1); + memFree(newVertex2); + memFree(newFace); + return NULL; + } MakeVertex( newVertex1, e, &mesh->vHead ); MakeVertex( newVertex2, e->Sym, &mesh->vHead ); -- cgit v1.2.1 From f7e0b88aa37fb2cea91ac15ada252549748ca65d Mon Sep 17 00:00:00 2001 From: Vinson Lee Date: Sun, 22 Nov 2009 01:57:35 -0500 Subject: glu/sgi: Fix memory leak in gluScaleImage. (cherry picked from commit a9c540f5dedbf593f8038fdbc95eecb60826ab26) --- src/libutil/mipmap.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/libutil/mipmap.c b/src/libutil/mipmap.c index af647af..4139c30 100644 --- a/src/libutil/mipmap.c +++ b/src/libutil/mipmap.c @@ -3526,6 +3526,8 @@ gluScaleImage(GLenum format, GLsizei widthin, GLsizei heightin, afterImage = malloc(image_size(widthout, heightout, format, GL_UNSIGNED_SHORT)); if (beforeImage == NULL || afterImage == NULL) { + free(beforeImage); + free(afterImage); return GLU_OUT_OF_MEMORY; } -- cgit v1.2.1 From b010f779834f743b6332825e975117ac7995ab16 Mon Sep 17 00:00:00 2001 From: Vinson Lee Date: Mon, 23 Nov 2009 00:57:37 -0500 Subject: glu/sgi: Fix memory leak in gluScaleImage3D. (cherry picked from commit b611f639b4bffdcca376293f7ce71af9f6bdbff3) --- src/libutil/mipmap.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/libutil/mipmap.c b/src/libutil/mipmap.c index 4139c30..223621f 100644 --- a/src/libutil/mipmap.c +++ b/src/libutil/mipmap.c @@ -7384,6 +7384,8 @@ int gluScaleImage3D(GLenum format, afterImage = malloc(imageSize3D(widthOut, heightOut, depthOut, format, GL_UNSIGNED_SHORT)); if (beforeImage == NULL || afterImage == NULL) { + free(beforeImage); + free(afterImage); return GLU_OUT_OF_MEMORY; } retrieveStoreModes3D(&psm); -- cgit v1.2.1 From c33f022d25c79164ebd684c25c6aedd65d0bb9ee Mon Sep 17 00:00:00 2001 From: Vinson Lee Date: Mon, 23 Nov 2009 01:09:06 -0500 Subject: glu/sgi: Fix memory leak in bitmapBuild2DMipmaps. (cherry picked from commit 5b925b7daa566d799c4f50911a7fcca114131503) --- src/libutil/mipmap.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/libutil/mipmap.c b/src/libutil/mipmap.c index 223621f..c5faebd 100644 --- a/src/libutil/mipmap.c +++ b/src/libutil/mipmap.c @@ -3762,6 +3762,7 @@ static int bitmapBuild2DMipmaps(GLenum target, GLint internalFormat, glPixelStorei(GL_UNPACK_SKIP_PIXELS,psm.unpack_skip_pixels); glPixelStorei(GL_UNPACK_ROW_LENGTH, psm.unpack_row_length); glPixelStorei(GL_UNPACK_SWAP_BYTES, psm.unpack_swap_bytes); + free(newImage); return GLU_OUT_OF_MEMORY; } } -- cgit v1.2.1 From e0bcbe6d5cfbec3b8f16e430429f6dc53dfed9e5 Mon Sep 17 00:00:00 2001 From: Vinson Lee Date: Tue, 24 Nov 2009 01:23:12 -0500 Subject: glu/sgi: Fix memory leak in gluBuild3DMipmapLevelsCore. (cherry picked from commit 326b66d724754ca97012501db1c7c62d7d41a457) --- src/libutil/mipmap.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/libutil/mipmap.c b/src/libutil/mipmap.c index c5faebd..a5d07a5 100644 --- a/src/libutil/mipmap.c +++ b/src/libutil/mipmap.c @@ -8232,6 +8232,7 @@ static int gluBuild3DMipmapLevelsCore(GLenum target, GLint internalFormat, glPixelStorei(GL_UNPACK_SWAP_BYTES, psm.unpack_swap_bytes); glPixelStorei(GL_UNPACK_SKIP_IMAGES, psm.unpack_skip_images); glPixelStorei(GL_UNPACK_IMAGE_HEIGHT, psm.unpack_image_height); + free(srcImage); return GLU_OUT_OF_MEMORY; } } -- cgit v1.2.1 From 0f4e7158f244a7871f107126a74396508a7a4009 Mon Sep 17 00:00:00 2001 From: Vinson Lee Date: Wed, 25 Nov 2009 00:18:49 -0500 Subject: glu/sgi: Fix memory leak in gluBuild3DMipmapLevelsCore. (cherry picked from commit f895abbd9777c4985aa40cf660c68f6d7333f0ec) --- src/libutil/mipmap.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/libutil/mipmap.c b/src/libutil/mipmap.c index a5d07a5..22d7022 100644 --- a/src/libutil/mipmap.c +++ b/src/libutil/mipmap.c @@ -8098,6 +8098,7 @@ static int gluBuild3DMipmapLevelsCore(GLenum target, GLint internalFormat, glPixelStorei(GL_UNPACK_SWAP_BYTES, psm.unpack_swap_bytes); glPixelStorei(GL_UNPACK_SKIP_IMAGES, psm.unpack_skip_images); glPixelStorei(GL_UNPACK_IMAGE_HEIGHT, psm.unpack_image_height); + free(srcImage); return GLU_OUT_OF_MEMORY; } /* level userLevel+1 is in srcImage; level userLevel already saved */ -- cgit v1.2.1 From 40ce9ce617ce0c8b4499c037fe7b1568052cfd54 Mon Sep 17 00:00:00 2001 From: Vinson Lee Date: Wed, 25 Nov 2009 00:28:56 -0500 Subject: glu/sgi: Fix memory leak in gluBuild2DMipmapLevelsCore. (cherry picked from commit 0d89f3dc7ff3f89ba8d5d664253730485bca35e2) --- src/libutil/mipmap.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/libutil/mipmap.c b/src/libutil/mipmap.c index 22d7022..796be0a 100644 --- a/src/libutil/mipmap.c +++ b/src/libutil/mipmap.c @@ -4349,6 +4349,7 @@ static int gluBuild2DMipmapLevelsCore(GLenum target, GLint internalFormat, glPixelStorei(GL_UNPACK_SKIP_PIXELS, psm.unpack_skip_pixels); glPixelStorei(GL_UNPACK_ROW_LENGTH, psm.unpack_row_length); glPixelStorei(GL_UNPACK_SWAP_BYTES, psm.unpack_swap_bytes); + free(srcImage); return GLU_OUT_OF_MEMORY; } } -- cgit v1.2.1 From 021bf425fe8cc7e18d3ea2d50c289cb839f4aed4 Mon Sep 17 00:00:00 2001 From: Vinson Lee Date: Wed, 25 Nov 2009 00:39:37 -0500 Subject: glu/sgi: Fix memory leak in gluBuild1DMipmapLevelsCore. (cherry picked from commit 94bcb9f1a43f2ab3bdff09156e3ab5b1c115cbd8) --- src/libutil/mipmap.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/libutil/mipmap.c b/src/libutil/mipmap.c index 796be0a..bf6eaf8 100644 --- a/src/libutil/mipmap.c +++ b/src/libutil/mipmap.c @@ -3608,6 +3608,7 @@ int gluBuild1DMipmapLevelsCore(GLenum target, GLint internalFormat, glPixelStorei(GL_UNPACK_SKIP_PIXELS,psm.unpack_skip_pixels); glPixelStorei(GL_UNPACK_ROW_LENGTH, psm.unpack_row_length); glPixelStorei(GL_UNPACK_SWAP_BYTES, psm.unpack_swap_bytes); + free(newImage); return GLU_OUT_OF_MEMORY; } } -- cgit v1.2.1 From a391cf73c2664665ff2855b78affce5c7457054a Mon Sep 17 00:00:00 2001 From: Vinson Lee Date: Thu, 26 Nov 2009 00:35:31 -0500 Subject: glu/sgi: Fix memory leak in gluBuild2DMipmapLevelsCore. (cherry picked from commit 808f0376607b0e2d31dfebc888fd8f1e737fed09) --- src/libutil/mipmap.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/libutil/mipmap.c b/src/libutil/mipmap.c index bf6eaf8..d1fd5a7 100644 --- a/src/libutil/mipmap.c +++ b/src/libutil/mipmap.c @@ -4108,6 +4108,7 @@ static int gluBuild2DMipmapLevelsCore(GLenum target, GLint internalFormat, glPixelStorei(GL_UNPACK_SKIP_PIXELS, psm.unpack_skip_pixels); glPixelStorei(GL_UNPACK_ROW_LENGTH, psm.unpack_row_length); glPixelStorei(GL_UNPACK_SWAP_BYTES, psm.unpack_swap_bytes); + free(srcImage); return GLU_OUT_OF_MEMORY; } /* level userLevel+1 is in srcImage; level userLevel already saved */ -- cgit v1.2.1 From fdc4468d876a90a6fae04b1a6e9ccde94e63a4c9 Mon Sep 17 00:00:00 2001 From: Vinson Lee Date: Tue, 22 Dec 2009 23:07:00 -0800 Subject: glu/sgi: Silence uninitialized variable warnings. --- src/libnurbs/nurbtess/sampleCompBot.cc | 4 ++-- src/libnurbs/nurbtess/sampleCompTop.cc | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/libnurbs/nurbtess/sampleCompBot.cc b/src/libnurbs/nurbtess/sampleCompBot.cc index e12f88b..2e70f83 100644 --- a/src/libnurbs/nurbtess/sampleCompBot.cc +++ b/src/libnurbs/nurbtess/sampleCompBot.cc @@ -207,7 +207,7 @@ void sampleBotRightWithGridLine(Real* botVertex, return; } - Int segIndexMono, segIndexPass; + Int segIndexMono = 0, segIndexPass; findBotRightSegment(rightChain, rightEnd, rightCorner, @@ -293,7 +293,7 @@ void sampleBotLeftWithGridLine(Real* botVertex, return; } - Int segIndexPass, segIndexMono; + Int segIndexPass, segIndexMono = 0; findBotLeftSegment(leftChain, leftEnd, leftCorner, grid->get_u_value(leftU), segIndexMono, segIndexPass); sampleBotLeftWithGridLinePost(botVertex, diff --git a/src/libnurbs/nurbtess/sampleCompTop.cc b/src/libnurbs/nurbtess/sampleCompTop.cc index b7b9296..951e937 100644 --- a/src/libnurbs/nurbtess/sampleCompTop.cc +++ b/src/libnurbs/nurbtess/sampleCompTop.cc @@ -172,7 +172,7 @@ void sampleTopRightWithGridLine(Real* topVertex, return; } - Int segIndexSmall, segIndexLarge; + Int segIndexSmall = 0, segIndexLarge; findTopRightSegment(rightChain, rightStart, rightEnd, @@ -294,7 +294,7 @@ void sampleTopLeftWithGridLine(Real* topVertex, primStream* pStream ) { - Int segIndexSmall, segIndexLarge; + Int segIndexSmall = 0, segIndexLarge; //if left chain is empty, then there is only one top vertex with one grid // line if(leftEnd < leftStart) { -- cgit v1.2.1 From e2ee6423fea4ffac4e2e2c67a9f2b9ec098c9740 Mon Sep 17 00:00:00 2001 From: Vinson Lee Date: Wed, 23 Dec 2009 16:11:10 -0800 Subject: glu/sgi: Silence compiler warnings. --- src/libnurbs/internals/subdivider.cc | 6 ++++-- src/libnurbs/nurbtess/partitionY.cc | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/libnurbs/internals/subdivider.cc b/src/libnurbs/internals/subdivider.cc index cc0b514..ccddc27 100644 --- a/src/libnurbs/internals/subdivider.cc +++ b/src/libnurbs/internals/subdivider.cc @@ -531,16 +531,18 @@ Subdivider::nonSamplingSplit( patchlist.pspec[param].range[1] ) * 0.5; split( source, left, right, param, mid ); Patchlist subpatchlist( patchlist, param, mid ); - if( left.isnonempty() ) + if( left.isnonempty() ) { if( subpatchlist.cullCheck() == CULL_TRIVIAL_REJECT ) freejarcs( left ); else nonSamplingSplit( left, subpatchlist, subdivisions-1, param ); - if( right.isnonempty() ) + } + if( right.isnonempty() ) { if( patchlist.cullCheck() == CULL_TRIVIAL_REJECT ) freejarcs( right ); else nonSamplingSplit( right, patchlist, subdivisions-1, param ); + } } else { // make bbox calls diff --git a/src/libnurbs/nurbtess/partitionY.cc b/src/libnurbs/nurbtess/partitionY.cc index 297c629..e097461 100644 --- a/src/libnurbs/nurbtess/partitionY.cc +++ b/src/libnurbs/nurbtess/partitionY.cc @@ -111,8 +111,8 @@ Int isCusp(directedLine *v) else if(A[1] > B[1] && C[1] > B[1]) return 1; - if(isAbove(v, v) && isAbove(v, v->getPrev()) || - isBelow(v, v) && isBelow(v, v->getPrev())) + if((isAbove(v, v) && isAbove(v, v->getPrev())) || + (isBelow(v, v) && isBelow(v, v->getPrev()))) return 1; else return 0; -- cgit v1.2.1 From 69c4807db609ecdf515ee0059bd7160de9444fc6 Mon Sep 17 00:00:00 2001 From: Vinson Lee Date: Wed, 23 Dec 2009 17:50:02 -0800 Subject: glu/sgi: Initialize variable in directedLine. --- src/libnurbs/nurbtess/directedLine.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libnurbs/nurbtess/directedLine.cc b/src/libnurbs/nurbtess/directedLine.cc index 7445035..5be1ae3 100644 --- a/src/libnurbs/nurbtess/directedLine.cc +++ b/src/libnurbs/nurbtess/directedLine.cc @@ -800,7 +800,7 @@ directedLine* readAllPolygons(char* filename) { Int nEdges; fscanf(fp, "%i", &nEdges); - Real vert[2][2]; + Real vert[2][2] = { { 0 } }; Real VV[2][2]; /*the first two vertices*/ fscanf(fp, "%f", &(vert[0][0])); -- cgit v1.2.1 From c6952f6dab8d0cdd6a5bc7915ef1958ae58b1976 Mon Sep 17 00:00:00 2001 From: Vinson Lee Date: Fri, 25 Dec 2009 14:23:10 -0800 Subject: glu/sgi: Fix include recursion. arcsorter.h should not include itself. --- src/libnurbs/internals/arcsorter.h | 1 - 1 file changed, 1 deletion(-) diff --git a/src/libnurbs/internals/arcsorter.h b/src/libnurbs/internals/arcsorter.h index d72dd1e..a55df92 100644 --- a/src/libnurbs/internals/arcsorter.h +++ b/src/libnurbs/internals/arcsorter.h @@ -37,7 +37,6 @@ #define __gluarcsorter_h_ #include "sorter.h" -#include "arcsorter.h" class Arc; class Subdivider; -- cgit v1.2.1