mesa: call glutDestroyWindow() on exit to help find mem leaks
authorBrian Paul <brian.paul@tungstengraphics.com>
Fri, 16 May 2008 22:02:52 +0000 (16:02 -0600)
committerBrian Paul <brian.paul@tungstengraphics.com>
Fri, 16 May 2008 22:02:52 +0000 (16:02 -0600)
progs/glsl/texdemo1.c
progs/trivial/quad-tex-2d.c

index d29ecf452b1d086e21c1abbb200c9407a565d398..3ceae14b96bb50c08cd6b7f73ab0b83dcff67f08 100644 (file)
@@ -48,6 +48,7 @@ static GLfloat TexXrot = 0, TexYrot = 0;
 static GLfloat Xrot = 20.0, Yrot = 20.0, Zrot = 0.0;
 static GLfloat EyeDist = 10;
 static GLboolean Anim = GL_TRUE;
+static int win = 0;
 
 
 struct uniform_info {
@@ -177,6 +178,7 @@ key(unsigned char k, int x, int y)
          EyeDist = 90;
       break;
    case 27:
+      glutDestroyWindow(win);
       exit(0);
    }
    glutPostRedisplay();
@@ -554,7 +556,7 @@ main(int argc, char *argv[])
    glutInit(&argc, argv);
    glutInitWindowSize(500, 400);
    glutInitDisplayMode(GLUT_RGB | GLUT_DEPTH | GLUT_DOUBLE);
-   glutCreateWindow(Demo);
+   win = glutCreateWindow(Demo);
    glutReshapeFunc(Reshape);
    glutKeyboardFunc(key);
    glutSpecialFunc(specialkey);
index 3a6e5237ed50fc4251550cf474b80081a9653890..97c9fc54d866d2ff62c657a4ad498c7903d8be5c 100644 (file)
@@ -31,6 +31,7 @@ static GLenum Target = GL_TEXTURE_2D;
 static GLenum Filter = GL_NEAREST;
 GLenum doubleBuffer;
 static float Rot = 0;
+static int win = 0;
 
 static void Init(void)
 {
@@ -88,6 +89,7 @@ static void Reshape(int width, int height)
    glFrustum(-1, 1, -1, 1, 10, 20);
 #endif
    glMatrixMode(GL_MODELVIEW);
+   glLoadIdentity();
    glTranslatef(0, 0, -15);
 }
 
@@ -101,6 +103,7 @@ static void Key(unsigned char key, int x, int y)
       Rot -= 10.0;
       break;
    case 27:
+      glutDestroyWindow(win);
       exit(0);
    default:
       return;
@@ -170,7 +173,8 @@ int main(int argc, char **argv)
     type |= (doubleBuffer) ? GLUT_DOUBLE : GLUT_SINGLE;
     glutInitDisplayMode(type);
 
-    if (glutCreateWindow("First Tri") == GL_FALSE) {
+    win = glutCreateWindow("First Tri");
+    if (!win) {
        exit(1);
     }