static void
NEDsim_free(Display * dpy, Window win, void * closure)
{
- // TODO: Replace all this with proper code to free everything.
struct NEDsim * nedsim = closure;
+
+ if (nedsim->nedstate != NULL) {
+ free(nedsim->nedstate->active_thread->psw);
+ free(nedsim->nedstate->active_thread);
+ free(nedsim->nedstate->hack);
+ free(nedsim->nedstate);
+ }
+
+ // TODO: Replace all this with proper code to free everything related to the screensaver itself.
XFreeGC(nedsim->dpy, nedsim->gc);
free(nedsim);
}