summaryrefslogtreecommitdiffstats
path: root/progs/demos/teapot.c
diff options
context:
space:
mode:
authorShuang He <[email protected]>2009-04-27 07:13:33 -0600
committerBrian Paul <[email protected]>2009-04-27 07:13:33 -0600
commite32660060954c0d1a1f7636c6365970348f3be24 (patch)
tree95026a9d4a9705cbec430955ddbdfbf4b3a52a4f /progs/demos/teapot.c
parentb618827fac84ca12a354da5808f30e96bedbc92a (diff)
demos: Clean up allocated Textures and Display Lists when demo quit
Diffstat (limited to 'progs/demos/teapot.c')
-rw-r--r--progs/demos/teapot.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/progs/demos/teapot.c b/progs/demos/teapot.c
index 38ede7ac3e1..6bf6e064095 100644
--- a/progs/demos/teapot.c
+++ b/progs/demos/teapot.c
@@ -173,10 +173,20 @@ static void special(int k, int x, int y)
}
}
+static void cleanup(void)
+{
+ glDeleteTextures(1, &t1id);
+ glDeleteTextures(1, &t2id);
+ glDeleteLists(teapotdlist, 1);
+ glDeleteLists(basedlist, 1);
+ glDeleteLists(lightdlist, 1);
+}
+
static void key(unsigned char k, int x, int y)
{
switch(k) {
case 27:
+ cleanup();
exit(0);
break;
@@ -670,6 +680,7 @@ int main(int ac, char **av)
glutIdleFunc(draw);
glutMainLoop();
+ cleanup();
return 0;
}