summaryrefslogtreecommitdiffstats
path: root/hacks/glx/energystream.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/energystream.c
parentUpdate gitignore (diff)
downloadxscreensaver-ae69a754244c4e475c8d2591772ca8e005071d83.tar.gz
xscreensaver-ae69a754244c4e475c8d2591772ca8e005071d83.tar.xz
xscreensaver-ae69a754244c4e475c8d2591772ca8e005071d83.zip
Update to 5.42
Diffstat (limited to 'hacks/glx/energystream.c')
-rw-r--r--hacks/glx/energystream.c19
1 files changed, 11 insertions, 8 deletions
diff --git a/hacks/glx/energystream.c b/hacks/glx/energystream.c
index 7221f0d..cc8b5b2 100644
--- a/hacks/glx/energystream.c
+++ b/hacks/glx/energystream.c
@@ -367,16 +367,19 @@ free_stream (ModeInfo * mi)
stream_configuration *es = &ess[MI_SCREEN(mi)];
int i;
- if (es->glx_context) {
- glXMakeCurrent (MI_DISPLAY(mi), MI_WINDOW(mi), *(es->glx_context));
+ if (!es->glx_context) return;
+ glXMakeCurrent (MI_DISPLAY(mi), MI_WINDOW(mi), *es->glx_context);
- for (i = 0; i < es->num_streams; i++) {
- free (es->streams[i].flares);
- glDeleteTextures (1, &es->streams[i].flare_tex);
- }
+ if (es->trackball) gltrackball_free (es->trackball);
+ if (es->rot) free_rotator (es->rot);
- free (es->streams);
+ for (i = 0; i < es->num_streams; i++) {
+ free (es->streams[i].flares);
+ glDeleteTextures (1, &es->streams[i].flare_tex);
}
+
+ if (es->streams) free (es->streams);
+
}
@@ -438,7 +441,7 @@ draw_stream (ModeInfo *mi)
cur_time = (float)(GETSECS(current_time) * 1000 + GETMSECS(current_time) - es->start_time) / 1000.0;
cur_time *= global_speed;
- glXMakeCurrent (MI_DISPLAY(mi), MI_WINDOW(mi), *(es->glx_context));
+ glXMakeCurrent (MI_DISPLAY(mi), MI_WINDOW(mi), *es->glx_context);
glClear (GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);