Fix segfault on forcible window closure.
[u/mdw/putty] / macosx / osxwin.m
index f0ebee4..59cc4bf 100644 (file)
      * Do so.
      */
     sfree(alert_ctx);
-    if (term)
-       term_free(term);
-    if (logctx)
-       log_free(logctx);
     if (back)
        back->free(backhandle);
     if (ldisc)
        ldisc_free(ldisc);
+    /* ldisc must be freed before term, since ldisc_free expects term
+     * still to be around. */
+    if (logctx)
+       log_free(logctx);
+    if (term)
+       term_free(term);
     [super dealloc];
 }