X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=blobdiff_plain;f=macosx%2Fosxwin.m;h=f3cba03201450e6d8905c0a8e2b26cdf98e832c5;hb=d83cd2f79bba111660262af0827296cb76e17040;hp=f0ebee4553adc61e712d71fcc7a5a22421e68488;hpb=fe8114d90b3a7719a22f2c3ebe18154191e4ddbd;p=PuTTY.git diff --git a/macosx/osxwin.m b/macosx/osxwin.m index f0ebee45..f3cba032 100644 --- a/macosx/osxwin.m +++ b/macosx/osxwin.m @@ -313,14 +313,16 @@ * 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;