X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=ncurses%2Fbase%2Flib_freeall.c;h=61991816361424d739cdd8f26ce1c13db5914194;hp=ad7028efc41e1989c4355dcfb78a919f4281795c;hb=9fab8ab6b69130169a6880e63585d83efb1c1722;hpb=d8b5e3f8187d68e90f8146e866470fcff148073d diff --git a/ncurses/base/lib_freeall.c b/ncurses/base/lib_freeall.c index ad7028ef..61991816 100644 --- a/ncurses/base/lib_freeall.c +++ b/ncurses/base/lib_freeall.c @@ -40,7 +40,7 @@ extern int malloc_errfd; /* FIXME */ #endif -MODULE_ID("$Id: lib_freeall.c,v 1.52 2008/08/31 00:50:36 tom Exp $") +MODULE_ID("$Id: lib_freeall.c,v 1.55 2008/12/06 23:52:29 tom Exp $") /* * Free all ncurses data. This is used for testing only (there's no practical @@ -98,14 +98,14 @@ _nc_freeall(void) delscreen(SP); _nc_unlock_global(curses); } - if (cur_term != 0) - del_curterm(cur_term); (void) _nc_printf_string(0, empty_va); #ifdef TRACE (void) _nc_trace_buf(-1, 0); #endif - +#if USE_WIDEC_SUPPORT + FreeIfNeeded(_nc_wacs); +#endif _nc_leaks_tinfo(); #if HAVE_LIBDBMALLOC @@ -142,4 +142,14 @@ NCURSES_EXPORT(void) _nc_freeall(void) { } + +NCURSES_EXPORT(void) +_nc_free_and_exit(int code) +{ + if (SP) + delscreen(SP); + if (cur_term != 0) + del_curterm(cur_term); + exit(code); +} #endif