From 80cc5ecb29940b23f8baf3e28b0eda363add6a4b Mon Sep 17 00:00:00 2001 From: nhmall Date: Sat, 11 Apr 2026 14:08:36 -0400 Subject: [PATCH] some windows cleanup at end of game --- sys/windows/consoletty.c | 6 +++++- sys/windows/windmain.c | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/sys/windows/consoletty.c b/sys/windows/consoletty.c index 600cc5b13..988e7663a 100644 --- a/sys/windows/consoletty.c +++ b/sys/windows/consoletty.c @@ -870,7 +870,8 @@ back_buffer_flip(void) do_anything |= do_wide_content; } else { #endif - if (strcmp((const char *) back->utf8str, + if (back->utf8str && front->utf8str + && strcmp((const char *) back->utf8str, (const char *) front->utf8str)) do_anything |= do_utf8_content; #ifdef UTF8_FROM_CORE @@ -1184,6 +1185,7 @@ consoletty_open(int mode UNUSED) really_move_cursor(); nhUse(debugvar); } +extern void set_emergency_io(void); void consoletty_exit(void) @@ -1191,8 +1193,10 @@ consoletty_exit(void) free_custom_colors(); free((genericptr_t) console.front_buffer); free((genericptr_t) console.back_buffer); + console.front_buffer = console.back_buffer = 0; free((genericptr_t) console.localestr); free((genericptr_t) console.orig_localestr); + set_emergency_io(); } int diff --git a/sys/windows/windmain.c b/sys/windows/windmain.c index 8da9ddec9..a5bf3ae65 100644 --- a/sys/windows/windmain.c +++ b/sys/windows/windmain.c @@ -101,7 +101,7 @@ void update_file(const char *, const char *, const char *, const char *, BOOL); void windows_raw_print_bold(const char *); -staticfn void set_emergency_io(void); +void set_emergency_io(void); staticfn void stdio_wait_synch(void); staticfn void stdio_raw_print(const char *str); staticfn void stdio_nonl_raw_print(const char *str);