X-Git-Url: http://git.hungrycats.org/cgi-bin/gitweb.cgi?p=xscreensaver;a=blobdiff_plain;f=hacks%2Fglx%2Fhydrostat.c;h=776df0a7db3229ef4a222199d6f723ccd17fc7f2;hp=85aea634cc5ba141682f5f048dc5293fa36b5d80;hb=4361b69d3178d7fc98d0388f9a223af6c2651aba;hpb=d6b0217f2417bd19187f0ebc389d6c5c2233b11c diff --git a/hacks/glx/hydrostat.c b/hacks/glx/hydrostat.c index 85aea634..776df0a7 100644 --- a/hacks/glx/hydrostat.c +++ b/hacks/glx/hydrostat.c @@ -34,6 +34,7 @@ "*suppressRotationAnimation: True\n" \ # define refresh_hydrostat 0 +# define release_hydrostat 0 #undef countof #define countof(x) (sizeof((x))/sizeof((*x))) @@ -640,6 +641,8 @@ hydrostat_handle_event (ModeInfo *mi, XEvent *event) } +static void free_hydrostat (ModeInfo *mi); + ENTRYPOINT void init_hydrostat (ModeInfo *mi) { @@ -647,14 +650,7 @@ init_hydrostat (ModeInfo *mi) hydrostat_configuration *bp; int i; - if (!bps) { - bps = (hydrostat_configuration *) - calloc (MI_NUM_SCREENS(mi), sizeof (hydrostat_configuration)); - if (!bps) { - fprintf(stderr, "%s: out of memory\n", progname); - exit(1); - } - } + MI_INIT (mi, bps, free_hydrostat); bp = &bps[MI_SCREEN(mi)]; @@ -763,11 +759,13 @@ draw_hydrostat (ModeInfo *mi) } -ENTRYPOINT void -release_hydrostat (ModeInfo *mi) +static void +free_hydrostat (ModeInfo *mi) { hydrostat_configuration *bp = &bps[MI_SCREEN(mi)]; int i; + if (!bp->squids) + return; for (i = 0; i < MI_COUNT(mi); i++) free_squid (bp->squids[i]); free (bp->squids);