summaryrefslogtreecommitdiffstats
path: root/hacks/glx/circuit.c
diff options
context:
space:
mode:
authorSimon Rettberg2019-02-18 11:55:41 +0100
committerSimon Rettberg2019-02-18 11:55:41 +0100
commitae69a754244c4e475c8d2591772ca8e005071d83 (patch)
tree58b3fa7abc2dcfe3c23e1c0ce108950c720826ab /hacks/glx/circuit.c
parentUpdate gitignore (diff)
downloadxscreensaver-ae69a754244c4e475c8d2591772ca8e005071d83.tar.gz
xscreensaver-ae69a754244c4e475c8d2591772ca8e005071d83.tar.xz
xscreensaver-ae69a754244c4e475c8d2591772ca8e005071d83.zip
Update to 5.42
Diffstat (limited to 'hacks/glx/circuit.c')
-rw-r--r--hacks/glx/circuit.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/hacks/glx/circuit.c b/hacks/glx/circuit.c
index 744e4b6..b8b845e 100644
--- a/hacks/glx/circuit.c
+++ b/hacks/glx/circuit.c
@@ -2072,7 +2072,7 @@ ENTRYPOINT void draw_circuit(ModeInfo *mi)
if (!ci->glx_context)
return;
- glXMakeCurrent(disp, w, *(ci->glx_context));
+ glXMakeCurrent(disp, w, *ci->glx_context);
display(mi);
@@ -2084,8 +2084,12 @@ ENTRYPOINT void draw_circuit(ModeInfo *mi)
ENTRYPOINT void free_circuit(ModeInfo *mi)
{
Circuit *ci = &circuit[MI_SCREEN(mi)];
- if (ci->font)
- free_texture_font (ci->font);
+ int i;
+ if (!ci->glx_context) return;
+ glXMakeCurrent (MI_DISPLAY(mi), MI_WINDOW(mi), *ci->glx_context);
+ if (ci->font) free_texture_font (ci->font);
+ for (i = 0 ; i < 12 ; i++)
+ if (glIsList(ci->band_list[i])) glDeleteLists(ci->band_list[i], 1);
FreeAllGL(mi);
}