diff options
Diffstat (limited to 'hacks/cloudlife.c')
-rw-r--r-- | hacks/cloudlife.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/hacks/cloudlife.c b/hacks/cloudlife.c index 4b65f9e..123dd13 100644 --- a/hacks/cloudlife.c +++ b/hacks/cloudlife.c @@ -382,6 +382,11 @@ cloudlife_event (Display *dpy, Window window, void *closure, XEvent *event) { XClearWindow (dpy, window); st->cycles = 0; + if (st->field) { + free (st->field->cells); + free (st->field->new_cells); + free (st->field); + } st->field = init_field(st); return True; } @@ -392,6 +397,12 @@ static void cloudlife_free (Display *dpy, Window window, void *closure) { struct state *st = (struct state *) closure; + free (st->field->cells); + free (st->field->new_cells); + free (st->field); + free (st->colors); + XFreeGC (dpy, st->fgc); + XFreeGC (dpy, st->bgc); free (st); } |