First crack at `terminal-modes' in SSH. PuTTY now sends ERASE by default,
[u/mdw/putty] / macosx / osxwin.m
index f0ebee4..f3cba03 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];
 }
 
@@ -911,6 +913,13 @@ void ldisc_update(void *frontend, int echo, int edit)
      */
 }
 
+char *get_ttymode(void *frontend, const char *mode)
+{
+    SessionWindow *win = (SessionWindow *)ctx;
+    Terminal *term = [win term];
+    return term_get_ttymode(term, mode);
+}
+
 void update_specials_menu(void *frontend)
 {
     //SessionWindow *win = (SessionWindow *)frontend;