curs_memleaks(3X)                                          curs_memleaks(3X)

NAME         top

       _nc_freeall _nc_free_and_exit - curses memory-leak checking

SYNOPSIS         top

       #include <curses.h>

       void _nc_freeall(void);
       void _nc_free_and_exit(int);

DESCRIPTION         top

       These functions are used to simplify analysis of memory leaks in the
       ncurses library.  They are normally not available; they must be
       configured into the library at build time using the --disable-leaks
       option.  That compiles-in code that frees memory that normally would
       not be freed.

       Any implementation of curses must not free the memory associated with
       a screen, since (even after calling endwin), it must be available for
       use in the next call to refresh(3X).  There are also chunks of memory
       held for performance reasons.  That makes it hard to analyze curses
       applications for memory leaks.  To work around this, one can build a
       debugging version of the ncurses library which frees those chunks
       which it can, and provides these functions to free all of the memory
       allocated by the ncurses library.

       The _nc_free_and_exit function is the preferred one since some of the
       memory which is freed may be required for the application to continue
       running.  Its parameter is the code to pass to the exit routine.

RETURN VALUE         top

       These functions do not return a value.

PORTABILITY         top

       These functions are not part of the XSI interface.

SEE ALSO         top


COLOPHON         top

       This page is part of the ncurses (new curses) project.  Information
       about the project can be found at 
       ⟨⟩.  If you have a
       bug report for this manual page, send it to  This page was obtained from the
       project's upstream Git mirror of the CVS repository 
       ⟨git://⟩ on 2017-03-13.  If you
       discover any rendering problems in this HTML version of the page, or
       you believe there is a better or more up-to-date source for the page,
       or you have corrections or improvements to the information in this
       COLOPHON (which is not part of the original manual page), send a mail