diff options
Diffstat (limited to 'doc/html/man/curs_memleaks.3x.html')
-rw-r--r-- | doc/html/man/curs_memleaks.3x.html | 118 |
1 files changed, 72 insertions, 46 deletions
diff --git a/doc/html/man/curs_memleaks.3x.html b/doc/html/man/curs_memleaks.3x.html index ecac055..18b38c9 100644 --- a/doc/html/man/curs_memleaks.3x.html +++ b/doc/html/man/curs_memleaks.3x.html @@ -1,7 +1,7 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> <!-- **************************************************************************** - * Copyright (c) 2008,2010 Free Software Foundation, Inc. * + * Copyright 2019,2020 Thomas E. Dickey * + * Copyright 2008-2010,2017 Free Software Foundation, Inc. * * * * Permission is hereby granted, free of charge, to any person obtaining a * * copy of this software and associated documentation files (the * @@ -27,82 +27,108 @@ * sale, use or other dealings in this Software without prior written * * authorization. * **************************************************************************** - * @Id: curs_memleaks.3x,v 1.3 2010/12/04 18:40:45 tom Exp @ + * @Id: curs_memleaks.3x,v 1.8 2020/02/02 23:34:34 tom Exp @ --> +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> <HTML> <HEAD> +<meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> +<meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> <TITLE>curs_memleaks 3x</TITLE> -<link rev=made href="mailto:bug-ncurses@gnu.org"> +<link rel="author" href="mailto:bug-ncurses@gnu.org"> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </HEAD> <BODY> -<H1>curs_memleaks 3x</H1> -<HR> +<H1 class="no-header">curs_memleaks 3x</H1> <PRE> -<!-- Manpage converted by man2html 3.0.1 --> -<STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG> <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG> +<STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG> <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG> -</PRE> -<H2>NAME</H2><PRE> - <STRONG>_nc_freeall</STRONG> <STRONG>_nc_free_and_exit</STRONG> - <STRONG>curses</STRONG> memory-leak +</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE> + <STRONG>_nc_freeall</STRONG>, <STRONG>_nc_free_and_exit</STRONG>, <STRONG>_nc_free_tinfo</STRONG> - <STRONG>curses</STRONG> memory-leak checking -</PRE> -<H2>SYNOPSIS</H2><PRE> +</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE> <STRONG>#include</STRONG> <STRONG><curses.h></STRONG> + <STRONG>void</STRONG> <STRONG>exit_curses(int);</STRONG> + <STRONG>void</STRONG> <STRONG>exit_terminfo(int);</STRONG> + + /* deprecated */ <STRONG>void</STRONG> <STRONG>_nc_freeall(void);</STRONG> <STRONG>void</STRONG> <STRONG>_nc_free_and_exit(int);</STRONG> + <STRONG>void</STRONG> <STRONG>_nc_free_tinfo(int);</STRONG> -</PRE> -<H2>DESCRIPTION</H2><PRE> - 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 <STRONG>--disable-leaks</STRONG> option. That com- - piles-in code that frees memory that normally would not be - freed. - - Any implementation of curses must not free the memory as- - sociated with a screen, since (even after calling <STRONG>endwin</STRONG>), - it must be available for use in the next call to <STRONG>refresh</STRONG>. - There are also chunks of memory held for performance rea- - sons. 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. +</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE> + These functions are used to simplify analysis of memory leaks in the + ncurses library. + Any implementation of curses must not free the memory associated with a + screen, since (even after calling <STRONG>endwin</STRONG>), it must be available for use + in the next call to <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG>. There are also chunks of memory held + for performance reasons. That makes it hard to analyze curses applica- + tions for memory leaks. When using the specially configured debugging + version of the ncurses library, applications can call functions which + free those chunks of memory, simplifying the process of memory-leak + checking. -</PRE> -<H2>RETURN VALUE</H2><PRE> + Some of the functions are named with a "_nc_" prefix because they are + not intended for use in the non-debugging library: + + <STRONG>_nc_freeall</STRONG> + This frees (almost) all of the memory allocated by ncurses. + + <STRONG>_nc_free_and_exit</STRONG> + This frees the memory allocated by ncurses (like <STRONG>_nc_freeall</STRONG>), and + exits the program. It is preferred over <STRONG>_nc_freeall</STRONG> since some of + that memory may be required to keep the application running. Sim- + ply exiting (with the given exit-code) is safer. + + <STRONG>_nc_free_tinfo</STRONG> + Use this function if only the low-level terminfo functions (and + corresponding library) are used. Like <STRONG>_nc_free_and_exit</STRONG>, it exits + the program after freeing memory. + + The functions prefixed "_nc" are normally not available; they must be + configured into the library at build time using the <STRONG>--disable-leaks</STRONG> op- + tion. That compiles-in code that frees memory that normally would not + be freed. + + The <STRONG>exit_curses</STRONG> and <STRONG>exit_terminfo</STRONG> functions call <STRONG>_nc_free_and_exit</STRONG> and + <STRONG>_nc_free_tinfo</STRONG> if the library is configured to support memory-leak + checking. If the library is not configured to support memory-leak + checking, they simply call <STRONG>exit</STRONG>. + + +</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE> These functions do not return a value. -</PRE> -<H2>PORTABILITY</H2><PRE> - These functions are not part of the XSI interface. +</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE> + These functions are not part of X/Open Curses; nor do other implementa- + tions of curses provide a similar feature. -</PRE> -<H2>SEE ALSO</H2><PRE> +</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>. - <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG> + <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG> </PRE> -<HR> -Man(1) output converted with <a href="http://invisible-island.net/scripts/readme.html#others_scripts">man2html</a> +<div class="nav"> +<ul> +<li><a href="#h2-NAME">NAME</a></li> +<li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li> +<li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li> +<li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li> +<li><a href="#h2-PORTABILITY">PORTABILITY</a></li> +<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li> +</ul> +</div> </BODY> </HTML> |