diff options
author | Simon Rettberg | 2019-02-18 11:55:58 +0100 |
---|---|---|
committer | Simon Rettberg | 2019-02-18 11:55:58 +0100 |
commit | aa7530630e595b80d5db54655fd827b61edc0fd7 (patch) | |
tree | 048cb74072450c7592f254c3537ac8f252d09d73 /hacks/glx/splodesic.c | |
parent | Forgot one DPMS killing instance (diff) | |
parent | Update to 5.42 (diff) | |
download | xscreensaver-aa7530630e595b80d5db54655fd827b61edc0fd7.tar.gz xscreensaver-aa7530630e595b80d5db54655fd827b61edc0fd7.tar.xz xscreensaver-aa7530630e595b80d5db54655fd827b61edc0fd7.zip |
Merge branch 'master' into openslxv23
Diffstat (limited to 'hacks/glx/splodesic.c')
-rw-r--r-- | hacks/glx/splodesic.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/hacks/glx/splodesic.c b/hacks/glx/splodesic.c index 2823133..a68e992 100644 --- a/hacks/glx/splodesic.c +++ b/hacks/glx/splodesic.c @@ -575,7 +575,7 @@ draw_splodesic (ModeInfo *mi) if (!bp->glx_context) return; - glXMakeCurrent(MI_DISPLAY(mi), MI_WINDOW(mi), *(bp->glx_context)); + glXMakeCurrent(MI_DISPLAY(mi), MI_WINDOW(mi), *bp->glx_context); glShadeModel(GL_SMOOTH); @@ -627,12 +627,19 @@ ENTRYPOINT void free_splodesic (ModeInfo *mi) { splodesic_configuration *bp = &bps[MI_SCREEN(mi)]; + + if (!bp->glx_context) return; + glXMakeCurrent(MI_DISPLAY(mi), MI_WINDOW(mi), *bp->glx_context); + while (bp->triangles) { triangle *t = bp->triangles->next; free (bp->triangles); bp->triangles = t; } + if (bp->trackball) gltrackball_free (bp->trackball); + if (bp->rot) free_rotator (bp->rot); + if (bp->colors) free (bp->colors); } XSCREENSAVER_MODULE ("Splodesic", splodesic) |