summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Paul <brian.paul@tungstengraphics.com>2008-04-28 14:20:11 -0600
committerBrian Paul <brian.paul@tungstengraphics.com>2008-04-28 14:20:11 -0600
commit059ab50c60f19fd6dd30c574644c0e4e5747a330 (patch)
tree40b34858bb23e5149614744dc98fb556d7aeffb7
parentc2497879f127251994064a0e0c24901782adae9e (diff)
mesa: explicitly delete textures before creating new ones
Also, call glutDestroyWindow() upon exit.
-rw-r--r--progs/tests/manytex.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/progs/tests/manytex.c b/progs/tests/manytex.c
index 61a1519ae6..28f7d3b3f2 100644
--- a/progs/tests/manytex.c
+++ b/progs/tests/manytex.c
@@ -30,6 +30,7 @@ static GLboolean LinearFilter = GL_FALSE;
static GLboolean RandomSize = GL_FALSE;
static GLint Rows, Columns;
static GLint LowPriorityCount = 0;
+static GLint Win;
static void Idle( void )
@@ -128,6 +129,13 @@ static int RandomInt(int min, int max)
}
+static void DeleteTextures(void)
+{
+ glDeleteTextures(NumTextures, TextureID);
+ free(TextureID);
+}
+
+
static void Init( void )
{
@@ -306,9 +314,12 @@ static void Key( unsigned char key, int x, int y )
Zrot += step;
break;
case ' ':
+ DeleteTextures();
Init();
break;
case 27:
+ DeleteTextures();
+ glutDestroyWindow(Win);
exit(0);
break;
}
@@ -324,7 +335,7 @@ int main( int argc, char *argv[] )
glutInitWindowPosition( 0, 0 );
glutInitWindowSize( WinWidth, WinHeight );
glutInitDisplayMode( GLUT_RGB | GLUT_DOUBLE );
- glutCreateWindow(argv[0]);
+ Win = glutCreateWindow(argv[0]);
glutReshapeFunc( Reshape );
glutKeyboardFunc( Key );
glutDisplayFunc( Display );