1# ncurses 6.1 - patch 20191214 - Thomas E. Dickey 2# 3# ------------------------------------------------------------------------------ 4# 5# Ncurses 6.1 is at 6# ftp.gnu.org:/pub/gnu 7# 8# Patches for ncurses 6.1 can be found at 9# ftp://ftp.invisible-island.net/ncurses/6.1 10# http://invisible-mirror.net/archives/ncurses/6.1 11# 12# ------------------------------------------------------------------------------ 13# ftp://ftp.invisible-island.net/ncurses/6.1/ncurses-6.1-20191214.patch.gz 14# patch by Thomas E. Dickey <dickey@invisible-island.net> 15# created Sun Dec 15 02:10:35 UTC 2019 16# ------------------------------------------------------------------------------ 17# NEWS | 6 ++++- 18# VERSION | 2 - 19# c++/cursesmain.cc | 6 ++--- 20# dist.mk | 4 +-- 21# doc/html/ada/funcs/T.htm | 2 - 22# doc/html/man/adacurses6-config.1.html | 2 - 23# doc/html/man/captoinfo.1m.html | 2 - 24# doc/html/man/clear.1.html | 2 - 25# doc/html/man/curs_memleaks.3x.html | 35 +++++++++++++++++++++----------- 26# doc/html/man/form.3x.html | 2 - 27# doc/html/man/infocmp.1m.html | 2 - 28# doc/html/man/infotocap.1m.html | 2 - 29# doc/html/man/menu.3x.html | 2 - 30# doc/html/man/ncurses.3x.html | 2 - 31# doc/html/man/ncurses6-config.1.html | 2 - 32# doc/html/man/panel.3x.html | 2 - 33# doc/html/man/tabs.1.html | 2 - 34# doc/html/man/terminfo.5.html | 2 - 35# doc/html/man/tic.1m.html | 2 - 36# doc/html/man/toe.1m.html | 2 - 37# doc/html/man/tput.1.html | 2 - 38# doc/html/man/tset.1.html | 2 - 39# include/MKterm.h.awk.in | 13 +++++++++-- 40# include/curses.tail | 4 ++- 41# include/nc_alloc.h | 16 ++++++++++---- 42# man/curs_memleaks.3x | 29 +++++++++++++++++++------- 43# ncurses/base/lib_freeall.c | 19 ++++++++++++++--- 44# ncurses/curses.priv.h | 9 +------- 45# ncurses/llib-lncurses | 15 +++++++++++++ 46# ncurses/llib-lncursest | 16 ++++++++++++++ 47# ncurses/llib-lncursestw | 16 ++++++++++++++ 48# ncurses/llib-lncursesw | 16 ++++++++++++++ 49# ncurses/tinfo/comp_parse.c | 4 +-- 50# ncurses/tinfo/entries.c | 11 +++++++++- 51# ncurses/tty/hashmap.c | 16 +++++--------- 52# package/debian-mingw/changelog | 4 +-- 53# package/debian-mingw64/changelog | 4 +-- 54# package/debian/changelog | 4 +-- 55# package/mingw-ncurses.nsi | 4 +-- 56# package/mingw-ncurses.spec | 2 - 57# package/ncurses.map | 11 ++++++++-- 58# package/ncurses.spec | 2 - 59# package/ncurses.sym | 4 ++- 60# package/ncursest.map | 12 +++++++++- 61# package/ncursest.spec | 2 - 62# package/ncursest.sym | 4 ++- 63# package/ncursestw.map | 11 ++++++++-- 64# package/ncursestw.sym | 4 ++- 65# package/ncursesw.map | 11 ++++++++-- 66# package/ncursesw.sym | 4 ++- 67# progs/progs.priv.h | 7 +++--- 68# test/demo_new_pair.c | 6 ++--- 69# test/echochar.c | 4 +-- 70# test/firework.c | 6 ++--- 71# test/gdc.c | 8 +++---- 72# test/hanoi.c | 6 ++--- 73# test/lrtest.c | 4 +-- 74# test/ncurses.c | 8 +++---- 75# test/newdemo.c | 8 +++---- 76# test/picsmap.c | 14 ++++++------ 77# test/rain.c | 8 +++---- 78# test/savescreen.c | 8 +++---- 79# test/tclock.c | 4 +-- 80# test/test.priv.h | 8 +++---- 81# test/testcurs.c | 8 +++---- 82# test/worm.c | 6 ++--- 83# test/xmas.c | 6 ++--- 84# 67 files changed, 315 insertions(+), 158 deletions(-) 85# ------------------------------------------------------------------------------ 86Index: NEWS 87Prereq: 1.3415 88--- ncurses-6.1-20191207+/NEWS 2019-12-07 23:36:25.000000000 +0000 89+++ ncurses-6.1-20191214/NEWS 2019-12-14 21:26:03.000000000 +0000 90@@ -25,7 +25,7 @@ 91 -- sale, use or other dealings in this Software without prior written -- 92 -- authorization. -- 93 ------------------------------------------------------------------------------- 94--- $Id: NEWS,v 1.3415 2019/12/07 23:36:25 tom Exp $ 95+-- $Id: NEWS,v 1.3416 2019/12/14 21:26:03 tom Exp $ 96 ------------------------------------------------------------------------------- 97 98 This is a log of changes that ncurses has gone through since Zeyd started 99@@ -45,6 +45,10 @@ 100 Changes through 1.9.9e did not credit all contributions; 101 it is not possible to add this information. 102 103+20191214 104+ + add exit_curses() and exit_terminfo() to replace internal symbols for 105+ leak-checking. 106+ 107 20191207 108 + fix a few warnings for test-package builds 109 + add curses_trace(), to replace trace(). 110Index: VERSION 111--- ncurses-6.1-20191207+/VERSION 2019-12-07 10:19:49.000000000 +0000 112+++ ncurses-6.1-20191214/VERSION 2019-12-14 17:50:13.000000000 +0000 113@@ -1 +1 @@ 114-5:0:10 6.1 20191207 115+5:0:10 6.1 20191214 116Index: c++/cursesmain.cc 117Prereq: 1.15 118--- ncurses-6.1-20191207+/c++/cursesmain.cc 2013-09-28 20:56:47.000000000 +0000 119+++ ncurses-6.1-20191214/c++/cursesmain.cc 2019-12-14 22:48:23.000000000 +0000 120@@ -1,6 +1,6 @@ 121 // * this is for making emacs happy: -*-Mode: C++;-*- 122 /**************************************************************************** 123- * Copyright (c) 1998-2007,2013 Free Software Foundation, Inc. * 124+ * Copyright (c) 1998-2013,2019 Free Software Foundation, Inc. * 125 * * 126 * Permission is hereby granted, free of charge, to any person obtaining a * 127 * copy of this software and associated documentation files (the * 128@@ -43,7 +43,7 @@ 129 #define CPP_HAS_TRY_CATCH 0 130 #endif 131 132-MODULE_ID("$Id: cursesmain.cc,v 1.15 2013/09/28 20:56:47 tom Exp $") 133+MODULE_ID("$Id: cursesmain.cc,v 1.16 2019/12/14 22:48:23 tom Exp $") 134 135 #if HAVE_LOCALE_H 136 #include <locale.h> 137@@ -87,7 +87,7 @@ 138 #endif 139 #if NO_LEAKS 140 delete A; 141- _nc_free_and_exit(res); 142+ exit_curses(res); 143 #else 144 return(res); 145 #endif 146Index: dist.mk 147Prereq: 1.1318 148--- ncurses-6.1-20191207+/dist.mk 2019-12-07 10:19:49.000000000 +0000 149+++ ncurses-6.1-20191214/dist.mk 2019-12-14 17:50:13.000000000 +0000 150@@ -25,7 +25,7 @@ 151 # use or other dealings in this Software without prior written # 152 # authorization. # 153 ############################################################################## 154-# $Id: dist.mk,v 1.1318 2019/12/07 10:19:49 tom Exp $ 155+# $Id: dist.mk,v 1.1319 2019/12/14 17:50:13 tom Exp $ 156 # Makefile for creating ncurses distributions. 157 # 158 # This only needs to be used directly as a makefile by developers, but 159@@ -37,7 +37,7 @@ 160 # These define the major/minor/patch versions of ncurses. 161 NCURSES_MAJOR = 6 162 NCURSES_MINOR = 1 163-NCURSES_PATCH = 20191207 164+NCURSES_PATCH = 20191214 165 166 # We don't append the patch to the version, since this only applies to releases 167 VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR) 168Index: doc/html/ada/funcs/T.htm 169--- ncurses-6.1-20191207+/doc/html/ada/funcs/T.htm 2019-07-26 23:48:31.000000000 +0000 170+++ ncurses-6.1-20191214/doc/html/ada/funcs/T.htm 2019-12-15 00:54:38.000000000 +0000 171@@ -20,8 +20,8 @@ 172 <LI><A HREF="../terminal_interface-curses-termcap__adb.htm#ref_89_16" TARGET="main">tgetnum</A> 173 <LI><A HREF="../terminal_interface-curses-termcap__adb.htm#ref_108_16" TARGET="main">tgetstr - terminal_interface-curses-termcap.adb:108</A> 174 <LI><A HREF="../terminal_interface-curses-termcap__adb.htm#ref_129_16" TARGET="main">tgetstr - terminal_interface-curses-termcap.adb:129</A> 175-<LI><A HREF="../terminal_interface-curses-termcap__ads.htm#ref_53_13" TARGET="main">TGoto</A> 176 <LI><A HREF="../terminal_interface-curses-termcap__adb.htm#ref_151_16" TARGET="main">tgoto</A> 177+<LI><A HREF="../terminal_interface-curses-termcap__ads.htm#ref_53_13" TARGET="main">TGoto</A> 178 <LI><A HREF="../terminal_interface-curses-terminfo__adb.htm#ref_69_16" TARGET="main">tigetflag</A> 179 <LI><A HREF="../terminal_interface-curses-terminfo__adb.htm#ref_87_16" TARGET="main">tigetstr - terminal_interface-curses-terminfo.adb:87</A> 180 <LI><A HREF="../terminal_interface-curses-terminfo__adb.htm#ref_108_16" TARGET="main">tigetstr - terminal_interface-curses-terminfo.adb:108</A> 181Index: doc/html/man/adacurses6-config.1.html 182--- ncurses-6.1-20191207+/doc/html/man/adacurses6-config.1.html 2019-12-07 20:48:39.000000000 +0000 183+++ ncurses-6.1-20191214/doc/html/man/adacurses6-config.1.html 2019-12-15 00:54:32.000000000 +0000 184@@ -125,7 +125,7 @@ 185 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> 186 <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> 187 188- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207). 189+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191214). 190 191 192 193Index: doc/html/man/captoinfo.1m.html 194--- ncurses-6.1-20191207+/doc/html/man/captoinfo.1m.html 2019-12-07 20:48:39.000000000 +0000 195+++ ncurses-6.1-20191214/doc/html/man/captoinfo.1m.html 2019-12-15 00:54:32.000000000 +0000 196@@ -198,7 +198,7 @@ 197 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> 198 <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> 199 200- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207). 201+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191214). 202 203 204 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE> 205Index: doc/html/man/clear.1.html 206--- ncurses-6.1-20191207+/doc/html/man/clear.1.html 2019-12-07 20:48:39.000000000 +0000 207+++ ncurses-6.1-20191214/doc/html/man/clear.1.html 2019-12-15 00:54:32.000000000 +0000 208@@ -148,7 +148,7 @@ 209 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> 210 <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> 211 212- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207). 213+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191214). 214 215 216 217Index: doc/html/man/curs_memleaks.3x.html 218--- ncurses-6.1-20191207+/doc/html/man/curs_memleaks.3x.html 2019-03-16 19:34:44.000000000 +0000 219+++ ncurses-6.1-20191214/doc/html/man/curs_memleaks.3x.html 2019-12-15 00:54:33.000000000 +0000 220@@ -1,6 +1,6 @@ 221 <!-- 222 **************************************************************************** 223- * Copyright (c) 2008-2010,2017 Free Software Foundation, Inc. * 224+ * Copyright (c) 2008-2017,2019 Free Software Foundation, Inc. * 225 * * 226 * Permission is hereby granted, free of charge, to any person obtaining a * 227 * copy of this software and associated documentation files (the * 228@@ -53,6 +53,10 @@ 229 </PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE> 230 <STRONG>#include</STRONG> <STRONG><curses.h></STRONG> 231 232+ <STRONG>void</STRONG> <STRONG>exit_curses(int);</STRONG> 233+ <STRONG>void</STRONG> <STRONG>exit_terminfo(int);</STRONG> 234+ 235+ /* deprecated */ 236 <STRONG>void</STRONG> <STRONG>_nc_freeall(void);</STRONG> 237 <STRONG>void</STRONG> <STRONG>_nc_free_and_exit(int);</STRONG> 238 <STRONG>void</STRONG> <STRONG>_nc_free_tinfo(int);</STRONG> 239@@ -60,22 +64,19 @@ 240 241 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE> 242 These functions are used to simplify analysis of memory leaks in the 243- ncurses library. They are normally not available; they must be config- 244- ured into the library at build time using the <STRONG>--disable-leaks</STRONG> option. 245- That compiles-in code that frees memory that normally would not be 246- freed. 247+ ncurses library. 248 249 Any implementation of curses must not free the memory associated with a 250 screen, since (even after calling <STRONG>endwin</STRONG>), it must be available for use 251- in the next call to <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG>. There are also chunks of memory held 252+ in the next call to <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG>. There are also chunks of memory held 253 for performance reasons. That makes it hard to analyze curses applica- 254- tions for memory leaks. When using the specially configured debugging 255- version of the ncurses library, applications can call functions which 256- free those chunks of memory, simplifying the process of memory-leak 257+ tions for memory leaks. When using the specially configured debugging 258+ version of the ncurses library, applications can call functions which 259+ free those chunks of memory, simplifying the process of memory-leak 260 checking. 261 262- These functions are named with a "_nc_" prefix because they are not in- 263- tended for use in the non-debugging library: 264+ Some of the functions are named with a "_nc_" prefix because they are 265+ not intended for use in the non-debugging library: 266 267 <STRONG>_nc_freeall</STRONG> 268 This frees (almost) all of the memory allocated by ncurses. 269@@ -87,10 +88,20 @@ 270 ply exiting (with the given exit-code) is safer. 271 272 <STRONG>_nc_free_tinfo</STRONG> 273- Use this function if only the low-level terminfo functions (and 274+ Use this function if only the low-level terminfo functions (and 275 corresponding library) are used. Like <STRONG>_nc_free_and_exit</STRONG>, it exits 276 the program after freeing memory. 277 278+ The functions prefixed "_nc" are normally not available; they must be 279+ configured into the library at build time using the <STRONG>--disable-leaks</STRONG> op- 280+ tion. That compiles-in code that frees memory that normally would not 281+ be freed. 282+ 283+ The <STRONG>exit_curses</STRONG> and <STRONG>exit_terminfo</STRONG> functions call <STRONG>_nc_free_and_exit</STRONG> and 284+ <STRONG>_nc_free_tinfo</STRONG> if the library is configured to support memory-leak 285+ checking. If the library is not configured to support memory-leak 286+ checking, they simply call <STRONG>exit</STRONG>. 287+ 288 289 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE> 290 These functions do not return a value. 291Index: doc/html/man/form.3x.html 292--- ncurses-6.1-20191207+/doc/html/man/form.3x.html 2019-12-07 20:48:42.000000000 +0000 293+++ ncurses-6.1-20191214/doc/html/man/form.3x.html 2019-12-15 00:54:34.000000000 +0000 294@@ -246,7 +246,7 @@ 295 <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names begin "form_" for detailed 296 descriptions of the entry points. 297 298- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207). 299+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191214). 300 301 302 303Index: doc/html/man/infocmp.1m.html 304--- ncurses-6.1-20191207+/doc/html/man/infocmp.1m.html 2019-12-07 20:48:43.000000000 +0000 305+++ ncurses-6.1-20191214/doc/html/man/infocmp.1m.html 2019-12-15 00:54:35.000000000 +0000 306@@ -512,7 +512,7 @@ 307 308 https://invisible-island.net/ncurses/tctest.html 309 310- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207). 311+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191214). 312 313 314 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE> 315Index: doc/html/man/infotocap.1m.html 316--- ncurses-6.1-20191207+/doc/html/man/infotocap.1m.html 2019-12-07 20:48:43.000000000 +0000 317+++ ncurses-6.1-20191214/doc/html/man/infotocap.1m.html 2019-12-15 00:54:35.000000000 +0000 318@@ -90,7 +90,7 @@ 319 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> 320 <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> 321 322- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207). 323+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191214). 324 325 326 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE> 327Index: doc/html/man/menu.3x.html 328--- ncurses-6.1-20191207+/doc/html/man/menu.3x.html 2019-12-07 20:48:44.000000000 +0000 329+++ ncurses-6.1-20191214/doc/html/man/menu.3x.html 2019-12-15 00:54:35.000000000 +0000 330@@ -221,7 +221,7 @@ 331 <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names begin "menu_" for detailed 332 descriptions of the entry points. 333 334- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207). 335+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191214). 336 337 338 339Index: doc/html/man/ncurses.3x.html 340--- ncurses-6.1-20191207+/doc/html/man/ncurses.3x.html 2019-12-07 20:48:45.000000000 +0000 341+++ ncurses-6.1-20191214/doc/html/man/ncurses.3x.html 2019-12-15 00:54:36.000000000 +0000 342@@ -59,7 +59,7 @@ 343 method of updating character screens with reasonable optimization. 344 This implementation is "new curses" (ncurses) and is the approved 345 replacement for 4.4BSD classic curses, which has been discontinued. 346- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207). 347+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191214). 348 349 The <STRONG>ncurses</STRONG> library emulates the curses library of System V Release 4 350 UNIX, and XPG4 (X/Open Portability Guide) curses (also known as XSI 351Index: doc/html/man/ncurses6-config.1.html 352--- ncurses-6.1-20191207+/doc/html/man/ncurses6-config.1.html 2019-12-07 20:48:45.000000000 +0000 353+++ ncurses-6.1-20191214/doc/html/man/ncurses6-config.1.html 2019-12-15 00:54:36.000000000 +0000 354@@ -112,7 +112,7 @@ 355 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> 356 <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> 357 358- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207). 359+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191214). 360 361 362 363Index: doc/html/man/panel.3x.html 364--- ncurses-6.1-20191207+/doc/html/man/panel.3x.html 2019-12-07 20:48:45.000000000 +0000 365+++ ncurses-6.1-20191214/doc/html/man/panel.3x.html 2019-12-15 00:54:36.000000000 +0000 366@@ -204,7 +204,7 @@ 367 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> 368 <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>, 369 370- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207). 371+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191214). 372 373 374 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE> 375Index: doc/html/man/tabs.1.html 376--- ncurses-6.1-20191207+/doc/html/man/tabs.1.html 2019-12-07 20:48:45.000000000 +0000 377+++ ncurses-6.1-20191214/doc/html/man/tabs.1.html 2019-12-15 00:54:36.000000000 +0000 378@@ -205,7 +205,7 @@ 379 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> 380 <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>. 381 382- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207). 383+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191214). 384 385 386 387Index: doc/html/man/terminfo.5.html 388--- ncurses-6.1-20191207+/doc/html/man/terminfo.5.html 2019-12-07 20:48:45.000000000 +0000 389+++ ncurses-6.1-20191214/doc/html/man/terminfo.5.html 2019-12-15 00:54:36.000000000 +0000 390@@ -103,7 +103,7 @@ 391 have, by specifying how to perform screen operations, and by specifying 392 padding requirements and initialization sequences. 393 394- This manual describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207). 395+ This manual describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191214). 396 397 398 </PRE><H3><a name="h3-Terminfo-Entry-Syntax">Terminfo Entry Syntax</a></H3><PRE> 399Index: doc/html/man/tic.1m.html 400--- ncurses-6.1-20191207+/doc/html/man/tic.1m.html 2019-12-07 20:48:45.000000000 +0000 401+++ ncurses-6.1-20191214/doc/html/man/tic.1m.html 2019-12-15 00:54:37.000000000 +0000 402@@ -460,7 +460,7 @@ 403 <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>, <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>, <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, 404 <STRONG><A HREF="term.5.html">term(5)</A></STRONG>. <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>. <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>. 405 406- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207). 407+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191214). 408 409 410 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE> 411Index: doc/html/man/toe.1m.html 412--- ncurses-6.1-20191207+/doc/html/man/toe.1m.html 2019-12-07 20:48:46.000000000 +0000 413+++ ncurses-6.1-20191214/doc/html/man/toe.1m.html 2019-12-15 00:54:37.000000000 +0000 414@@ -170,7 +170,7 @@ 415 <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>, <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG>ter-</STRONG> 416 <STRONG><A HREF="terminfo.5.html">minfo(5)</A></STRONG>. 417 418- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207). 419+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191214). 420 421 422 423Index: doc/html/man/tput.1.html 424--- ncurses-6.1-20191207+/doc/html/man/tput.1.html 2019-12-07 20:48:46.000000000 +0000 425+++ ncurses-6.1-20191214/doc/html/man/tput.1.html 2019-12-15 00:54:37.000000000 +0000 426@@ -522,7 +522,7 @@ 427 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> 428 <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>, <STRONG>stty(1)</STRONG>, <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>, <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>, <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>. 429 430- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207). 431+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191214). 432 433 434 435Index: doc/html/man/tset.1.html 436--- ncurses-6.1-20191207+/doc/html/man/tset.1.html 2019-12-07 20:48:46.000000000 +0000 437+++ ncurses-6.1-20191214/doc/html/man/tset.1.html 2019-12-15 00:54:37.000000000 +0000 438@@ -389,7 +389,7 @@ 439 <STRONG>csh(1)</STRONG>, <STRONG>sh(1)</STRONG>, <STRONG>stty(1)</STRONG>, <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>, <STRONG>tty(4)</STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>, 440 <STRONG>ttys(5)</STRONG>, <STRONG>environ(7)</STRONG> 441 442- This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207). 443+ This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191214). 444 445 446 447Index: include/MKterm.h.awk.in 448Prereq: 1.71 449--- ncurses-6.1-20191207+/include/MKterm.h.awk.in 2019-04-13 22:34:42.000000000 +0000 450+++ ncurses-6.1-20191214/include/MKterm.h.awk.in 2019-12-14 22:31:32.000000000 +0000 451@@ -59,7 +59,7 @@ 452 print "/* and: Thomas E. Dickey 1995-on */" 453 print "/****************************************************************************/" 454 print "" 455- print "/* $Id: MKterm.h.awk.in,v 1.71 2019/04/13 22:34:42 tom Exp $ */" 456+ print "/* $Id: MKterm.h.awk.in,v 1.72 2019/12/14 22:31:32 tom Exp $ */" 457 print "" 458 print "/*" 459 print "** term.h -- Definition of struct term" 460@@ -298,12 +298,14 @@ 461 print "" 462 print "" 463 print "/*" 464- print " * These entrypoints are used by tack." 465+ print " * These entrypoints are used by tack 1.07." 466 print " */" 467 print "extern NCURSES_EXPORT(const TERMTYPE *) _nc_fallback (const char *);" 468 print "extern NCURSES_EXPORT(int) _nc_read_entry (const char * const, char * const, TERMTYPE *const);" 469 print "" 470- print "/* Normal entry points */" 471+ print "/*" 472+ print " * Normal entry points" 473+ print " */" 474 print "extern NCURSES_EXPORT(TERMINAL *) set_curterm (TERMINAL *);" 475 print "extern NCURSES_EXPORT(int) del_curterm (TERMINAL *);" 476 print "" 477@@ -371,6 +373,11 @@ 478 print "extern NCURSES_EXPORT(int) NCURSES_SP_NAME(restartterm) (SCREEN*, NCURSES_CONST char *, int, int *);" 479 print "#endif /* NCURSES_SP_FUNCS */" 480 print "" 481+ print "/*" 482+ print " * Debugging features." 483+ print " */" 484+ print "extern NCURSES_EXPORT(void) exit_terminfo(int) GCC_NORETURN;" 485+ print "" 486 print "#ifdef __cplusplus" 487 printf "%s\n", rcurl; 488 print "#endif" 489Index: include/curses.tail 490Prereq: 1.24 491--- ncurses-6.1-20191207+/include/curses.tail 2019-12-07 16:10:32.000000000 +0000 492+++ ncurses-6.1-20191214/include/curses.tail 2019-12-14 22:28:39.000000000 +0000 493@@ -1,4 +1,4 @@ 494-/* $Id: curses.tail,v 1.24 2019/12/07 16:10:32 tom Exp $ */ 495+/* $Id: curses.tail,v 1.25 2019/12/14 22:28:39 tom Exp $ */ 496 /* 497 * vile:cmode: 498 * This file is part of ncurses, designed to be appended after curses.h.in 499@@ -174,6 +174,8 @@ 500 #define OPTIMIZE_ALL 0xff /* enable all optimizations (dflt) */ 501 #endif 502 503+extern NCURSES_EXPORT(void) exit_curses (int) GCC_NORETURN; 504+ 505 #include <unctrl.h> 506 507 #ifdef __cplusplus 508Index: include/nc_alloc.h 509Prereq: 1.23 510--- ncurses-6.1-20191207+/include/nc_alloc.h 2017-07-22 16:59:37.000000000 +0000 511+++ ncurses-6.1-20191214/include/nc_alloc.h 2019-12-15 01:00:51.000000000 +0000 512@@ -1,5 +1,5 @@ 513 /**************************************************************************** 514- * Copyright (c) 1998-2013,2017 Free Software Foundation, Inc. * 515+ * Copyright (c) 1998-2017,2019 Free Software Foundation, Inc. * 516 * * 517 * Permission is hereby granted, free of charge, to any person obtaining a * 518 * copy of this software and associated documentation files (the * 519@@ -29,7 +29,7 @@ 520 /**************************************************************************** 521 * Author: Thomas E. Dickey 1996-on * 522 ****************************************************************************/ 523-/* $Id: nc_alloc.h,v 1.23 2017/07/22 16:59:37 tom Exp $ */ 524+/* $Id: nc_alloc.h,v 1.24 2019/12/15 01:00:51 tom Exp $ */ 525 526 #ifndef NC_ALLOC_included 527 #define NC_ALLOC_included 1 528@@ -72,8 +72,9 @@ 529 #if HAVE_LIBDBMALLOC || HAVE_LIBDMALLOC || NO_LEAKS 530 #define HAVE_NC_FREEALL 1 531 struct termtype; 532-extern NCURSES_EXPORT(void) _nc_free_and_exit(int) GCC_NORETURN; 533-extern NCURSES_EXPORT(void) _nc_free_tinfo(int) GCC_NORETURN; 534+extern NCURSES_EXPORT(void) _nc_free_tinfo(int) GCC_NORETURN GCC_DEPRECATED("use exit_terminfo"); 535+ 536+#ifdef NCURSES_INTERNALS 537 extern NCURSES_EXPORT(void) _nc_free_tic(int) GCC_NORETURN; 538 extern NCURSES_EXPORT(void) _nc_free_tparm(void); 539 extern NCURSES_EXPORT(void) _nc_leaks_dump_entry(void); 540@@ -82,8 +83,13 @@ 541 #if NCURSES_SP_FUNCS 542 extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_free_and_exit)(SCREEN*, int) GCC_NORETURN; 543 #endif 544+extern NCURSES_EXPORT(void) _nc_free_and_exit(int) GCC_NORETURN; 545+ 546+#else /* !NCURSES_INTERNALS */ 547+extern NCURSES_EXPORT(void) _nc_free_and_exit(int) GCC_NORETURN GCC_DEPRECATED("use exit_curses"); 548+#endif 549 550-#define ExitProgram(code) _nc_free_and_exit(code) 551+#define ExitProgram(code) exit_curses(code) 552 553 #endif /* NO_LEAKS, etc */ 554 555Index: man/curs_memleaks.3x 556Prereq: 1.6 557--- ncurses-6.1-20191207+/man/curs_memleaks.3x 2017-08-22 08:35:37.000000000 +0000 558+++ ncurses-6.1-20191214/man/curs_memleaks.3x 2019-12-14 23:21:32.000000000 +0000 559@@ -1,5 +1,5 @@ 560 .\"*************************************************************************** 561-.\" Copyright (c) 2008-2010,2017 Free Software Foundation, Inc. * 562+.\" Copyright (c) 2008-2017,2019 Free Software Foundation, Inc. * 563 .\" * 564 .\" Permission is hereby granted, free of charge, to any person obtaining a * 565 .\" copy of this software and associated documentation files (the * 566@@ -26,7 +26,7 @@ 567 .\" authorization. * 568 .\"*************************************************************************** 569 .\" 570-.\" $Id: curs_memleaks.3x,v 1.6 2017/08/22 08:35:37 Sven.Joachim Exp $ 571+.\" $Id: curs_memleaks.3x,v 1.7 2019/12/14 23:21:32 tom Exp $ 572 .TH curs_memleaks 3X "" 573 .ie \n(.g .ds `` \(lq 574 .el .ds `` `` 575@@ -43,6 +43,12 @@ 576 .SH SYNOPSIS 577 \fB#include <curses.h>\fR 578 .sp 579+\fBvoid exit_curses(int);\fR 580+.br 581+\fBvoid exit_terminfo(int);\fR 582+.sp 583+/* deprecated */ 584+.br 585 \fBvoid _nc_freeall(void);\fR 586 .br 587 \fBvoid _nc_free_and_exit(int);\fR 588@@ -51,10 +57,6 @@ 589 .SH DESCRIPTION 590 These functions are used to simplify analysis of memory leaks in the ncurses 591 library. 592-They are normally not available; 593-they must be configured into the library 594-at build time using the \fB\-\-disable-leaks\fP option. 595-That compiles-in code that frees memory that normally would not be freed. 596 .PP 597 Any implementation of curses must not free the memory associated with 598 a screen, since (even after calling \fBendwin\fP), it must be available 599@@ -65,8 +67,8 @@ 600 applications can call functions which free those chunks of memory, 601 simplifying the process of memory-leak checking. 602 .PP 603-These functions are named with a \*(``_nc_\*('' prefix because they are not 604-intended for use in the non-debugging library: 605+Some of the functions are named with a \*(``_nc_\*('' prefix 606+because they are not intended for use in the non-debugging library: 607 .TP 5 608 \fB_nc_freeall\fP 609 This frees (almost) all of the memory allocated by ncurses. 610@@ -82,6 +84,17 @@ 611 Use this function if only the low-level terminfo functions (and 612 corresponding library) are used. 613 Like \fB_nc_free_and_exit\fP, it exits the program after freeing memory. 614+.PP 615+The functions prefixed \*(``_nc\*('' are normally not available; 616+they must be configured into the library 617+at build time using the \fB\-\-disable-leaks\fP option. 618+That compiles-in code that frees memory that normally would not be freed. 619+.PP 620+The \fBexit_curses\fP and \fBexit_terminfo\fP functions 621+call \fB_nc_free_and_exit\fP and \fB_nc_free_tinfo\fP if 622+the library is configured to support memory-leak checking. 623+If the library is not configured to support memory-leak checking, 624+they simply call \fBexit\fP. 625 .SH RETURN VALUE 626 These functions do not return a value. 627 .SH PORTABILITY 628Index: ncurses/base/lib_freeall.c 629Prereq: 1.70 630--- ncurses-6.1-20191207+/ncurses/base/lib_freeall.c 2019-12-07 20:28:03.000000000 +0000 631+++ ncurses-6.1-20191214/ncurses/base/lib_freeall.c 2019-12-15 00:30:49.000000000 +0000 632@@ -39,7 +39,7 @@ 633 extern int malloc_errfd; /* FIXME */ 634 #endif 635 636-MODULE_ID("$Id: lib_freeall.c,v 1.70 2019/12/07 20:28:03 tom Exp $") 637+MODULE_ID("$Id: lib_freeall.c,v 1.71 2019/12/15 00:30:49 tom Exp $") 638 639 /* 640 * Free all ncurses data. This is used for testing only (there's no practical 641@@ -159,7 +159,7 @@ 642 exit(code); 643 } 644 645-#else 646+#else /* !HAVE_NC_FREEALL */ 647 NCURSES_EXPORT(void) 648 _nc_freeall(void) 649 { 650@@ -175,7 +175,7 @@ 651 } 652 exit(code); 653 } 654-#endif 655+#endif /* HAVE_NC_FREEALL */ 656 657 #if NCURSES_SP_FUNCS 658 NCURSES_EXPORT(void) 659@@ -184,3 +184,16 @@ 660 NCURSES_SP_NAME(_nc_free_and_exit) (CURRENT_SCREEN, code); 661 } 662 #endif 663+ 664+NCURSES_EXPORT(void) 665+exit_curses(int code) 666+{ 667+#if NO_LEAKS 668+#if NCURSES_SP_FUNCS 669+ NCURSES_SP_NAME(_nc_free_and_exit) (CURRENT_SCREEN, code); 670+#else 671+ _nc_free_and_exit(code); /* deprecated... */ 672+#endif 673+#endif 674+ exit(code); 675+} 676Index: ncurses/curses.priv.h 677Prereq: 1.626 678--- ncurses-6.1-20191207+/ncurses/curses.priv.h 2019-12-07 20:08:06.000000000 +0000 679+++ ncurses-6.1-20191214/ncurses/curses.priv.h 2019-12-14 22:36:12.000000000 +0000 680@@ -34,7 +34,7 @@ 681 ****************************************************************************/ 682 683 /* 684- * $Id: curses.priv.h,v 1.626 2019/12/07 20:08:06 tom Exp $ 685+ * $Id: curses.priv.h,v 1.627 2019/12/14 22:36:12 tom Exp $ 686 * 687 * curses.priv.h 688 * 689@@ -2170,11 +2170,7 @@ 690 extern NCURSES_EXPORT(int) _nc_ripoffline(int, int(*)(WINDOW*, int)); 691 692 /* lib_setup.c */ 693-#if NO_LEAKS 694-#define ExitTerminfo(code) _nc_free_tinfo(code) 695-#else 696-#define ExitTerminfo(code) exit(code) 697-#endif 698+#define ExitTerminfo(code) exit_terminfo(code) 699 700 #define SETUP_FAIL ERR 701 702@@ -2264,7 +2260,6 @@ 703 extern NCURSES_EXPORT(void) _nc_init_termtype (TERMTYPE2 *const); 704 extern NCURSES_EXPORT(void) _nc_do_color (int, int, int, NCURSES_OUTC); 705 extern NCURSES_EXPORT(void) _nc_flush (void); 706-extern NCURSES_EXPORT(void) _nc_free_and_exit (int) GCC_NORETURN; 707 extern NCURSES_EXPORT(void) _nc_free_entry (ENTRY *, TERMTYPE2 *); 708 extern NCURSES_EXPORT(void) _nc_freeall (void); 709 extern NCURSES_EXPORT(void) _nc_hash_map (void); 710Index: ncurses/llib-lncurses 711--- ncurses-6.1-20191207+/ncurses/llib-lncurses 2019-03-17 01:14:53.000000000 +0000 712+++ ncurses-6.1-20191214/ncurses/llib-lncurses 2019-12-15 01:12:20.000000000 +0000 713@@ -2577,6 +2577,11 @@ 714 int code) 715 { /* void */ } 716 717+#undef exit_curses 718+void exit_curses( 719+ int code) 720+ { /* void */ } 721+ 722 /* ./expanded.c */ 723 724 #undef _nc_toggle_attr_on 725@@ -2987,6 +2992,11 @@ 726 void _nc_leaks_tinfo(void) 727 { /* void */ } 728 729+#undef exit_terminfo 730+void exit_terminfo( 731+ int code) 732+ { /* void */ } 733+ 734 /* ./fallback.c */ 735 736 #undef _nc_fallback 737@@ -3732,6 +3742,11 @@ 738 #undef _nc_outchars 739 long _nc_outchars; 740 741+#undef curses_trace 742+unsigned curses_trace( 743+ unsigned tracelevel) 744+ { return(*(unsigned *)0); } 745+ 746 #undef trace 747 void trace( 748 const unsigned int tracelevel) 749Index: ncurses/llib-lncursest 750--- ncurses-6.1-20191207+/ncurses/llib-lncursest 2019-03-17 01:14:53.000000000 +0000 751+++ ncurses-6.1-20191214/ncurses/llib-lncursest 2019-12-15 01:12:20.000000000 +0000 752@@ -34,6 +34,7 @@ 753 /* ./tty/hardscroll.c */ 754 755 #include <curses.priv.h> 756+ 757 #undef _nc_oldnums 758 int *_nc_oldnums; 759 760@@ -2585,6 +2586,11 @@ 761 int code) 762 { /* void */ } 763 764+#undef exit_curses 765+void exit_curses( 766+ int code) 767+ { /* void */ } 768+ 769 /* ./expanded.c */ 770 771 #undef _nc_toggle_attr_on 772@@ -3000,6 +3006,11 @@ 773 void _nc_leaks_tinfo(void) 774 { /* void */ } 775 776+#undef exit_terminfo 777+void exit_terminfo( 778+ int code) 779+ { /* void */ } 780+ 781 /* ./fallback.c */ 782 783 #undef _nc_fallback 784@@ -3830,6 +3841,11 @@ 785 long increment) 786 { /* void */ } 787 788+#undef curses_trace 789+unsigned curses_trace( 790+ unsigned tracelevel) 791+ { return(*(unsigned *)0); } 792+ 793 #undef trace 794 void trace( 795 const unsigned int tracelevel) 796Index: ncurses/llib-lncursestw 797--- ncurses-6.1-20191207+/ncurses/llib-lncursestw 2019-03-17 01:14:53.000000000 +0000 798+++ ncurses-6.1-20191214/ncurses/llib-lncursestw 2019-12-15 01:12:20.000000000 +0000 799@@ -34,6 +34,7 @@ 800 /* ./tty/hardscroll.c */ 801 802 #include <curses.priv.h> 803+ 804 #undef _nc_oldnums 805 int *_nc_oldnums; 806 807@@ -3177,6 +3178,11 @@ 808 int code) 809 { /* void */ } 810 811+#undef exit_curses 812+void exit_curses( 813+ int code) 814+ { /* void */ } 815+ 816 /* ./widechar/charable.c */ 817 818 #undef _nc_is_charable 819@@ -3939,6 +3945,11 @@ 820 void _nc_leaks_tinfo(void) 821 { /* void */ } 822 823+#undef exit_terminfo 824+void exit_terminfo( 825+ int code) 826+ { /* void */ } 827+ 828 /* ./fallback.c */ 829 830 #undef _nc_fallback2 831@@ -4779,6 +4790,11 @@ 832 long increment) 833 { /* void */ } 834 835+#undef curses_trace 836+unsigned curses_trace( 837+ unsigned tracelevel) 838+ { return(*(unsigned *)0); } 839+ 840 #undef trace 841 void trace( 842 const unsigned int tracelevel) 843Index: ncurses/llib-lncursesw 844--- ncurses-6.1-20191207+/ncurses/llib-lncursesw 2019-03-17 01:14:53.000000000 +0000 845+++ ncurses-6.1-20191214/ncurses/llib-lncursesw 2019-12-15 01:12:20.000000000 +0000 846@@ -34,6 +34,7 @@ 847 /* ./tty/hardscroll.c */ 848 849 #include <curses.priv.h> 850+ 851 #undef _nc_oldnums 852 int *_nc_oldnums; 853 854@@ -3168,6 +3169,11 @@ 855 int code) 856 { /* void */ } 857 858+#undef exit_curses 859+void exit_curses( 860+ int code) 861+ { /* void */ } 862+ 863 /* ./widechar/charable.c */ 864 865 #undef _nc_is_charable 866@@ -3925,6 +3931,11 @@ 867 void _nc_leaks_tinfo(void) 868 { /* void */ } 869 870+#undef exit_terminfo 871+void exit_terminfo( 872+ int code) 873+ { /* void */ } 874+ 875 /* ./fallback.c */ 876 877 #undef _nc_fallback2 878@@ -4680,6 +4691,11 @@ 879 #undef _nc_outchars 880 long _nc_outchars; 881 882+#undef curses_trace 883+unsigned curses_trace( 884+ unsigned tracelevel) 885+ { return(*(unsigned *)0); } 886+ 887 #undef trace 888 void trace( 889 const unsigned int tracelevel) 890Index: ncurses/tinfo/comp_parse.c 891Prereq: 1.107 892--- ncurses-6.1-20191207+/ncurses/tinfo/comp_parse.c 2019-10-19 20:47:43.000000000 +0000 893+++ ncurses-6.1-20191214/ncurses/tinfo/comp_parse.c 2019-12-14 22:34:35.000000000 +0000 894@@ -47,7 +47,7 @@ 895 896 #include <tic.h> 897 898-MODULE_ID("$Id: comp_parse.c,v 1.107 2019/10/19 20:47:43 tom Exp $") 899+MODULE_ID("$Id: comp_parse.c,v 1.108 2019/12/14 22:34:35 tom Exp $") 900 901 static void sanity_check2(TERMTYPE2 *, bool); 902 NCURSES_IMPEXP void NCURSES_API(*_nc_check_termtype2) (TERMTYPE2 *, bool) = sanity_check2; 903@@ -724,6 +724,6 @@ 904 _nc_free_tic(int code) 905 { 906 _nc_leaks_tic(); 907- _nc_free_tinfo(code); 908+ exit_terminfo(code); 909 } 910 #endif 911Index: ncurses/tinfo/entries.c 912Prereq: 1.28 913--- ncurses-6.1-20191207+/ncurses/tinfo/entries.c 2019-12-07 20:28:55.000000000 +0000 914+++ ncurses-6.1-20191214/ncurses/tinfo/entries.c 2019-12-15 00:18:03.000000000 +0000 915@@ -37,7 +37,7 @@ 916 917 #include <tic.h> 918 919-MODULE_ID("$Id: entries.c,v 1.28 2019/12/07 20:28:55 tom Exp $") 920+MODULE_ID("$Id: entries.c,v 1.29 2019/12/15 00:18:03 tom Exp $") 921 922 /**************************************************************************** 923 * 924@@ -164,3 +164,12 @@ 925 exit(code); 926 } 927 #endif 928+ 929+NCURSES_EXPORT(void) 930+exit_terminfo(int code) 931+{ 932+#if NO_LEAKS 933+ _nc_leaks_tinfo(); 934+#endif 935+ exit(code); 936+} 937Index: ncurses/tty/hashmap.c 938Prereq: 1.66 939--- ncurses-6.1-20191207+/ncurses/tty/hashmap.c 2016-05-28 23:32:40.000000000 +0000 940+++ ncurses-6.1-20191214/ncurses/tty/hashmap.c 2019-12-15 00:57:15.000000000 +0000 941@@ -1,5 +1,5 @@ 942 /**************************************************************************** 943- * Copyright (c) 1998-2015,2016 Free Software Foundation, Inc. * 944+ * Copyright (c) 1998-2016,2019 Free Software Foundation, Inc. * 945 * * 946 * Permission is hereby granted, free of charge, to any person obtaining a * 947 * copy of this software and associated documentation files (the * 948@@ -73,7 +73,7 @@ 949 #define CUR SP_TERMTYPE 950 #endif 951 952-MODULE_ID("$Id: hashmap.c,v 1.66 2016/05/28 23:32:40 tom Exp $") 953+MODULE_ID("$Id: hashmap.c,v 1.67 2019/12/15 00:57:15 tom Exp $") 954 955 #ifdef HASHDEBUG 956 957@@ -119,7 +119,7 @@ 958 static const NCURSES_CH_T blankchar = NewChar(BLANK_TEXT); 959 960 static NCURSES_INLINE unsigned long 961-hash(SCREEN *sp, NCURSES_CH_T * text) 962+hash(SCREEN *sp, NCURSES_CH_T *text) 963 { 964 int i; 965 NCURSES_CH_T ch; 966@@ -135,7 +135,7 @@ 967 968 /* approximate update cost */ 969 static int 970-update_cost(SCREEN *sp, NCURSES_CH_T * from, NCURSES_CH_T * to) 971+update_cost(SCREEN *sp, NCURSES_CH_T *from, NCURSES_CH_T *to) 972 { 973 int cost = 0; 974 int i; 975@@ -149,7 +149,7 @@ 976 } 977 978 static int 979-update_cost_from_blank(SCREEN *sp, NCURSES_CH_T * to) 980+update_cost_from_blank(SCREEN *sp, NCURSES_CH_T *to) 981 { 982 int cost = 0; 983 int i; 984@@ -583,11 +583,7 @@ 985 break; 986 } 987 } 988-#if NO_LEAKS 989- _nc_free_and_exit(EXIT_SUCCESS); 990-#else 991- return EXIT_SUCCESS; 992-#endif 993+ exit_curses(EXIT_SUCCESS); 994 } 995 996 #endif /* HASHDEBUG */ 997Index: package/debian-mingw/changelog 998--- ncurses-6.1-20191207+/package/debian-mingw/changelog 2019-12-07 10:19:49.000000000 +0000 999+++ ncurses-6.1-20191214/package/debian-mingw/changelog 2019-12-14 17:50:13.000000000 +0000 1000@@ -1,8 +1,8 @@ 1001-ncurses6 (6.1+20191207) unstable; urgency=low 1002+ncurses6 (6.1+20191214) unstable; urgency=low 1003 1004 * latest weekly patch 1005 1006- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 07 Dec 2019 05:19:49 -0500 1007+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 14 Dec 2019 12:50:13 -0500 1008 1009 ncurses6 (5.9-20131005) unstable; urgency=low 1010 1011Index: package/debian-mingw64/changelog 1012--- ncurses-6.1-20191207+/package/debian-mingw64/changelog 2019-12-07 10:19:49.000000000 +0000 1013+++ ncurses-6.1-20191214/package/debian-mingw64/changelog 2019-12-14 17:50:13.000000000 +0000 1014@@ -1,8 +1,8 @@ 1015-ncurses6 (6.1+20191207) unstable; urgency=low 1016+ncurses6 (6.1+20191214) unstable; urgency=low 1017 1018 * latest weekly patch 1019 1020- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 07 Dec 2019 05:19:49 -0500 1021+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 14 Dec 2019 12:50:13 -0500 1022 1023 ncurses6 (5.9-20131005) unstable; urgency=low 1024 1025Index: package/debian/changelog 1026--- ncurses-6.1-20191207+/package/debian/changelog 2019-12-07 10:19:49.000000000 +0000 1027+++ ncurses-6.1-20191214/package/debian/changelog 2019-12-14 17:50:13.000000000 +0000 1028@@ -1,8 +1,8 @@ 1029-ncurses6 (6.1+20191207) unstable; urgency=low 1030+ncurses6 (6.1+20191214) unstable; urgency=low 1031 1032 * latest weekly patch 1033 1034- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 07 Dec 2019 05:19:49 -0500 1035+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 14 Dec 2019 12:50:13 -0500 1036 1037 ncurses6 (5.9-20120608) unstable; urgency=low 1038 1039Index: package/mingw-ncurses.nsi 1040Prereq: 1.364 1041--- ncurses-6.1-20191207+/package/mingw-ncurses.nsi 2019-12-07 10:19:49.000000000 +0000 1042+++ ncurses-6.1-20191214/package/mingw-ncurses.nsi 2019-12-14 17:50:13.000000000 +0000 1043@@ -1,4 +1,4 @@ 1044-; $Id: mingw-ncurses.nsi,v 1.364 2019/12/07 10:19:49 tom Exp $ 1045+; $Id: mingw-ncurses.nsi,v 1.365 2019/12/14 17:50:13 tom Exp $ 1046 1047 ; TODO add examples 1048 ; TODO bump ABI to 6 1049@@ -10,7 +10,7 @@ 1050 !define VERSION_MAJOR "6" 1051 !define VERSION_MINOR "1" 1052 !define VERSION_YYYY "2019" 1053-!define VERSION_MMDD "1207" 1054+!define VERSION_MMDD "1214" 1055 !define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD} 1056 1057 !define MY_ABI "5" 1058Index: package/mingw-ncurses.spec 1059--- ncurses-6.1-20191207+/package/mingw-ncurses.spec 2019-12-07 10:19:49.000000000 +0000 1060+++ ncurses-6.1-20191214/package/mingw-ncurses.spec 2019-12-14 17:50:13.000000000 +0000 1061@@ -3,7 +3,7 @@ 1062 Summary: shared libraries for terminal handling 1063 Name: mingw32-ncurses6 1064 Version: 6.1 1065-Release: 20191207 1066+Release: 20191214 1067 License: X11 1068 Group: Development/Libraries 1069 Source: ncurses-%{version}-%{release}.tgz 1070Index: package/ncurses.map 1071Prereq: 1.48 1072--- ncurses-6.1-20191207+/package/ncurses.map 2019-12-07 18:03:20.000000000 +0000 1073+++ ncurses-6.1-20191214/package/ncurses.map 2019-12-14 23:28:36.000000000 +0000 1074@@ -1,4 +1,4 @@ 1075-# $Id: ncurses.map,v 1.48 2019/12/07 18:03:20 tom Exp $ 1076+# $Id: ncurses.map,v 1.50 2019/12/14 23:28:36 tom Exp $ 1077 # script for shared library symbol-versioning using ld 1078 # 1079 # This file was generated by ncu-mapsyms 1080@@ -765,7 +765,6 @@ 1081 reset_color_pairs_sp; 1082 unfocus_current_field; 1083 local: 1084- _*; 1085 _nc_Unset_Current_Field; 1086 _nc_change_pair; 1087 _nc_init_color; 1088@@ -775,6 +774,13 @@ 1089 _nc_set_color_pair; 1090 } NCURSES_5.9.20150530; 1091 1092+NCURSES_6.1.current { 1093+ global: 1094+ exit_curses; 1095+ local: 1096+ _*; 1097+} NCURSES_6.1.20171230; 1098+ 1099 NCURSES_TIC_5.0.19991023 { 1100 global: 1101 _nc_capcmp; 1102@@ -1199,6 +1205,7 @@ 1103 _nc_fmt_funcptr; 1104 _nc_wacs_width; 1105 curses_trace; 1106+ exit_terminfo; 1107 local: 1108 _*; 1109 } NCURSES_TINFO_6.1.20171230; 1110Index: package/ncurses.spec 1111--- ncurses-6.1-20191207+/package/ncurses.spec 2019-12-07 10:19:49.000000000 +0000 1112+++ ncurses-6.1-20191214/package/ncurses.spec 2019-12-14 17:50:13.000000000 +0000 1113@@ -1,7 +1,7 @@ 1114 Summary: shared libraries for terminal handling 1115 Name: ncurses6 1116 Version: 6.1 1117-Release: 20191207 1118+Release: 20191214 1119 License: X11 1120 Group: Development/Libraries 1121 Source: ncurses-%{version}-%{release}.tgz 1122Index: package/ncurses.sym 1123Prereq: 1.34 1124--- ncurses-6.1-20191207+/package/ncurses.sym 2019-12-07 18:03:20.000000000 +0000 1125+++ ncurses-6.1-20191214/package/ncurses.sym 2019-12-14 22:40:34.000000000 +0000 1126@@ -1,4 +1,4 @@ 1127-# $Id: ncurses.sym,v 1.34 2019/12/07 18:03:20 tom Exp $ 1128+# $Id: ncurses.sym,v 1.35 2019/12/14 22:40:34 tom Exp $ 1129 # script for shared library symbol-visibility using libtool 1130 # 1131 # This file was generated by ncu-mapsyms 1132@@ -328,6 +328,8 @@ 1133 erase 1134 erasechar 1135 erasechar_sp 1136+exit_curses 1137+exit_terminfo 1138 extended_color_content 1139 extended_color_content_sp 1140 extended_pair_content 1141Index: package/ncursest.map 1142Prereq: 1.46 1143--- ncurses-6.1-20191207+/package/ncursest.map 2019-12-07 18:03:20.000000000 +0000 1144+++ ncurses-6.1-20191214/package/ncursest.map 2019-12-14 23:28:54.000000000 +0000 1145@@ -1,4 +1,4 @@ 1146-# $Id: ncursest.map,v 1.46 2019/12/07 18:03:20 tom Exp $ 1147+# $Id: ncursest.map,v 1.48 2019/12/14 23:28:54 tom Exp $ 1148 # script for shared library symbol-versioning using ld 1149 # 1150 # This file was generated by ncu-mapsyms 1151@@ -484,6 +484,7 @@ 1152 _nc_fmt_funcptr; 1153 _nc_wacs_width; 1154 curses_trace; 1155+ exit_terminfo; 1156 local: 1157 _*; 1158 } NCURSES_TINFO_6.1.20171230; 1159@@ -1158,7 +1159,6 @@ 1160 reset_color_pairs_sp; 1161 unfocus_current_field; 1162 local: 1163- _*; 1164 _nc_Unset_Current_Field; 1165 _nc_change_pair; 1166 _nc_init_color; 1167@@ -1167,3 +1167,11 @@ 1168 _nc_reset_color_pair; 1169 _nc_set_color_pair; 1170 } NCURSEST_5.9.20150530; 1171+ 1172+NCURSEST_6.1.current { 1173+ global: 1174+ exit_curses; 1175+ local: 1176+ _*; 1177+} NCURSEST_6.1.20171230; 1178+ 1179Index: package/ncursest.spec 1180--- ncurses-6.1-20191207+/package/ncursest.spec 2019-12-07 10:19:49.000000000 +0000 1181+++ ncurses-6.1-20191214/package/ncursest.spec 2019-12-14 17:50:13.000000000 +0000 1182@@ -1,7 +1,7 @@ 1183 Summary: Curses library with POSIX thread support. 1184 Name: ncursest6 1185 Version: 6.1 1186-Release: 20191207 1187+Release: 20191214 1188 License: X11 1189 Group: Development/Libraries 1190 Source: ncurses-%{version}-%{release}.tgz 1191Index: package/ncursest.sym 1192Prereq: 1.38 1193--- ncurses-6.1-20191207+/package/ncursest.sym 2019-12-07 18:03:20.000000000 +0000 1194+++ ncurses-6.1-20191214/package/ncursest.sym 2019-12-14 22:42:32.000000000 +0000 1195@@ -1,4 +1,4 @@ 1196-# $Id: ncursest.sym,v 1.38 2019/12/07 18:03:20 tom Exp $ 1197+# $Id: ncursest.sym,v 1.39 2019/12/14 22:42:32 tom Exp $ 1198 # script for shared library symbol-visibility using libtool 1199 # 1200 # This file was generated by ncu-mapsyms 1201@@ -337,6 +337,8 @@ 1202 erase 1203 erasechar 1204 erasechar_sp 1205+exit_curses 1206+exit_terminfo 1207 extended_color_content 1208 extended_color_content_sp 1209 extended_pair_content 1210Index: package/ncursestw.map 1211Prereq: 1.48 1212--- ncurses-6.1-20191207+/package/ncursestw.map 2019-12-07 18:03:20.000000000 +0000 1213+++ ncurses-6.1-20191214/package/ncursestw.map 2019-12-14 23:28:20.000000000 +0000 1214@@ -1,4 +1,4 @@ 1215-# $Id: ncursestw.map,v 1.48 2019/12/07 18:03:20 tom Exp $ 1216+# $Id: ncursestw.map,v 1.50 2019/12/14 23:28:20 tom Exp $ 1217 # script for shared library symbol-versioning using ld 1218 # 1219 # This file was generated by ncu-mapsyms 1220@@ -490,6 +490,7 @@ 1221 _nc_fmt_funcptr; 1222 _nc_wacs_width; 1223 curses_trace; 1224+ exit_terminfo; 1225 local: 1226 _*; 1227 } NCURSES_TINFO_6.1.20171230; 1228@@ -1279,7 +1280,6 @@ 1229 reset_color_pairs_sp; 1230 unfocus_current_field; 1231 local: 1232- _*; 1233 _nc_Unset_Current_Field; 1234 _nc_change_pair; 1235 _nc_init_color; 1236@@ -1288,3 +1288,10 @@ 1237 _nc_reset_color_pair; 1238 _nc_set_color_pair; 1239 } NCURSESTW_5.9.20150530; 1240+ 1241+NCURSESTW_6.1.current { 1242+ global: 1243+ exit_curses; 1244+ local: 1245+ _*; 1246+} NCURSESTW_6.1.20171230; 1247Index: package/ncursestw.sym 1248Prereq: 1.37 1249--- ncurses-6.1-20191207+/package/ncursestw.sym 2019-12-07 18:03:20.000000000 +0000 1250+++ ncurses-6.1-20191214/package/ncursestw.sym 2019-12-14 22:44:31.000000000 +0000 1251@@ -1,4 +1,4 @@ 1252-# $Id: ncursestw.sym,v 1.37 2019/12/07 18:03:20 tom Exp $ 1253+# $Id: ncursestw.sym,v 1.38 2019/12/14 22:44:31 tom Exp $ 1254 # script for shared library symbol-visibility using libtool 1255 # 1256 # This file was generated by ncu-mapsyms 1257@@ -355,6 +355,8 @@ 1258 erasechar 1259 erasechar_sp 1260 erasewchar 1261+exit_curses 1262+exit_terminfo 1263 extended_color_content 1264 extended_color_content_sp 1265 extended_pair_content 1266Index: package/ncursesw.map 1267Prereq: 1.51 1268--- ncurses-6.1-20191207+/package/ncursesw.map 2019-12-07 18:03:20.000000000 +0000 1269+++ ncurses-6.1-20191214/package/ncursesw.map 2019-12-14 23:28:02.000000000 +0000 1270@@ -1,4 +1,4 @@ 1271-# $Id: ncursesw.map,v 1.51 2019/12/07 18:03:20 tom Exp $ 1272+# $Id: ncursesw.map,v 1.53 2019/12/14 23:28:02 tom Exp $ 1273 # script for shared library symbol-versioning using ld 1274 # 1275 # This file was generated by ncu-mapsyms 1276@@ -484,6 +484,7 @@ 1277 _nc_fmt_funcptr; 1278 _nc_wacs_width; 1279 curses_trace; 1280+ exit_terminfo; 1281 local: 1282 _*; 1283 } NCURSES_TINFO_6.1.20171230; 1284@@ -1300,7 +1301,6 @@ 1285 reset_color_pairs_sp; 1286 unfocus_current_field; 1287 local: 1288- _*; 1289 _nc_Unset_Current_Field; 1290 _nc_change_pair; 1291 _nc_init_color; 1292@@ -1309,3 +1309,10 @@ 1293 _nc_reset_color_pair; 1294 _nc_set_color_pair; 1295 } NCURSESW_5.9.20150530; 1296+ 1297+NCURSESW_6.1.current { 1298+ global: 1299+ exit_curses; 1300+ local: 1301+ _*; 1302+} NCURSESW_6.1.20171230; 1303Index: package/ncursesw.sym 1304Prereq: 1.36 1305--- ncurses-6.1-20191207+/package/ncursesw.sym 2019-12-07 18:03:20.000000000 +0000 1306+++ ncurses-6.1-20191214/package/ncursesw.sym 2019-12-14 22:45:41.000000000 +0000 1307@@ -1,4 +1,4 @@ 1308-# $Id: ncursesw.sym,v 1.36 2019/12/07 18:03:20 tom Exp $ 1309+# $Id: ncursesw.sym,v 1.37 2019/12/14 22:45:41 tom Exp $ 1310 # script for shared library symbol-visibility using libtool 1311 # 1312 # This file was generated by ncu-mapsyms 1313@@ -343,6 +343,8 @@ 1314 erasechar 1315 erasechar_sp 1316 erasewchar 1317+exit_curses 1318+exit_terminfo 1319 extended_color_content 1320 extended_color_content_sp 1321 extended_pair_content 1322Index: progs/progs.priv.h 1323Prereq: 1.46 1324--- ncurses-6.1-20191207+/progs/progs.priv.h 2017-10-09 00:30:38.000000000 +0000 1325+++ ncurses-6.1-20191214/progs/progs.priv.h 2019-12-14 23:53:12.000000000 +0000 1326@@ -1,5 +1,5 @@ 1327 /**************************************************************************** 1328- * Copyright (c) 1998-2015,2017 Free Software Foundation, Inc. * 1329+ * Copyright (c) 1998-2017,2019 Free Software Foundation, Inc. * 1330 * * 1331 * Permission is hereby granted, free of charge, to any person obtaining a * 1332 * copy of this software and associated documentation files (the * 1333@@ -30,7 +30,7 @@ 1334 * Author: Thomas E. Dickey 1997-on * 1335 ****************************************************************************/ 1336 /* 1337- * $Id: progs.priv.h,v 1.46 2017/10/09 00:30:38 tom Exp $ 1338+ * $Id: progs.priv.h,v 1.47 2019/12/14 23:53:12 tom Exp $ 1339 * 1340 * progs.priv.h 1341 * 1342@@ -129,10 +129,11 @@ 1343 1344 #include <nc_string.h> 1345 #include <nc_alloc.h> 1346+ 1347 #if HAVE_NC_FREEALL 1348 #undef ExitProgram 1349 #ifdef USE_LIBTINFO 1350-#define ExitProgram(code) _nc_free_tinfo(code) 1351+#define ExitProgram(code) exit_terminfo(code) 1352 #else 1353 #define ExitProgram(code) _nc_free_tic(code) 1354 #endif 1355Index: test/demo_new_pair.c 1356Prereq: 1.19 1357--- ncurses-6.1-20191207+/test/demo_new_pair.c 2018-05-12 14:30:04.000000000 +0000 1358+++ ncurses-6.1-20191214/test/demo_new_pair.c 2019-12-14 23:26:09.000000000 +0000 1359@@ -1,5 +1,5 @@ 1360 /**************************************************************************** 1361- * Copyright (c) 2017,2018 Free Software Foundation, Inc. * 1362+ * Copyright (c) 2017-2018,2019 Free Software Foundation, Inc. * 1363 * * 1364 * Permission is hereby granted, free of charge, to any person obtaining a * 1365 * copy of this software and associated documentation files (the * 1366@@ -26,7 +26,7 @@ 1367 * authorization. * 1368 ****************************************************************************/ 1369 /* 1370- * $Id: demo_new_pair.c,v 1.19 2018/05/12 14:30:04 tom Exp $ 1371+ * $Id: demo_new_pair.c,v 1.20 2019/12/14 23:26:09 tom Exp $ 1372 * 1373 * Demonstrate the alloc_pair() function. 1374 */ 1375@@ -336,7 +336,7 @@ 1376 total_cells += 1 + (use_wide ? 1 : 0); 1377 ++current; 1378 } 1379- exit_curses(); 1380+ stop_curses(); 1381 fclose(output); 1382 1383 printf("%.1f cells/second\n", 1384Index: test/echochar.c 1385Prereq: 1.19 1386--- ncurses-6.1-20191207+/test/echochar.c 2019-08-24 23:11:01.000000000 +0000 1387+++ ncurses-6.1-20191214/test/echochar.c 2019-12-14 23:25:29.000000000 +0000 1388@@ -26,7 +26,7 @@ 1389 * authorization. * 1390 ****************************************************************************/ 1391 /* 1392- * $Id: echochar.c,v 1.19 2019/08/24 23:11:01 tom Exp $ 1393+ * $Id: echochar.c,v 1.20 2019/12/14 23:25:29 tom Exp $ 1394 * 1395 * Demonstrate the echochar function (compare to dots.c). 1396 * Thomas Dickey - 2006/11/4 1397@@ -43,7 +43,7 @@ 1398 static void 1399 cleanup(void) 1400 { 1401- exit_curses(); 1402+ stop_curses(); 1403 1404 printf("\n\n%ld total cells, rate %.2f/sec\n", 1405 total_chars, 1406Index: test/firework.c 1407Prereq: 1.35 1408--- ncurses-6.1-20191207+/test/firework.c 2017-09-30 15:42:24.000000000 +0000 1409+++ ncurses-6.1-20191214/test/firework.c 2019-12-14 23:26:09.000000000 +0000 1410@@ -1,5 +1,5 @@ 1411 /**************************************************************************** 1412- * Copyright (c) 1998-2014,2017 Free Software Foundation, Inc. * 1413+ * Copyright (c) 1998-2017,2019 Free Software Foundation, Inc. * 1414 * * 1415 * Permission is hereby granted, free of charge, to any person obtaining a * 1416 * copy of this software and associated documentation files (the * 1417@@ -26,7 +26,7 @@ 1418 * authorization. * 1419 ****************************************************************************/ 1420 /* 1421- * $Id: firework.c,v 1.35 2017/09/30 15:42:24 tom Exp $ 1422+ * $Id: firework.c,v 1.36 2019/12/14 23:26:09 tom Exp $ 1423 */ 1424 #include <test.priv.h> 1425 1426@@ -37,7 +37,7 @@ 1427 static void 1428 cleanup(void) 1429 { 1430- exit_curses(); 1431+ stop_curses(); 1432 } 1433 1434 static void 1435Index: test/gdc.c 1436Prereq: 1.52 1437--- ncurses-6.1-20191207+/test/gdc.c 2019-08-24 23:11:01.000000000 +0000 1438+++ ncurses-6.1-20191214/test/gdc.c 2019-12-14 23:25:29.000000000 +0000 1439@@ -33,7 +33,7 @@ 1440 * modified 10-18-89 for curses (jrl) 1441 * 10-18-89 added signal handling 1442 * 1443- * $Id: gdc.c,v 1.52 2019/08/24 23:11:01 tom Exp $ 1444+ * $Id: gdc.c,v 1.53 2019/12/14 23:25:29 tom Exp $ 1445 */ 1446 1447 #include <test.priv.h> 1448@@ -66,7 +66,7 @@ 1449 signal(signo, sighndl); 1450 sigtermed = signo; 1451 if (redirected) { 1452- exit_curses(); 1453+ stop_curses(); 1454 ExitProgram(EXIT_FAILURE); 1455 } 1456 } 1457@@ -76,7 +76,7 @@ 1458 { 1459 if (sigtermed) { 1460 (void) standend(); 1461- exit_curses(); 1462+ stop_curses(); 1463 fprintf(stderr, "gdc terminated by signal %d\n", sigtermed); 1464 ExitProgram(EXIT_FAILURE); 1465 } 1466@@ -447,6 +447,6 @@ 1467 } 1468 } while (--count); 1469 (void) standend(); 1470- exit_curses(); 1471+ stop_curses(); 1472 ExitProgram(EXIT_SUCCESS); 1473 } 1474Index: test/hanoi.c 1475Prereq: 1.39 1476--- ncurses-6.1-20191207+/test/hanoi.c 2017-09-09 00:19:24.000000000 +0000 1477+++ ncurses-6.1-20191214/test/hanoi.c 2019-12-14 23:26:09.000000000 +0000 1478@@ -1,5 +1,5 @@ 1479 /**************************************************************************** 1480- * Copyright (c) 1998-2014,2017 Free Software Foundation, Inc. * 1481+ * Copyright (c) 1998-2017,2019 Free Software Foundation, Inc. * 1482 * * 1483 * Permission is hereby granted, free of charge, to any person obtaining a * 1484 * copy of this software and associated documentation files (the * 1485@@ -41,7 +41,7 @@ 1486 * 1487 * Date: 05.Nov.90 1488 * 1489- * $Id: hanoi.c,v 1.39 2017/09/09 00:19:24 tom Exp $ 1490+ * $Id: hanoi.c,v 1.40 2019/12/14 23:26:09 tom Exp $ 1491 */ 1492 1493 #include <test.priv.h> 1494@@ -354,6 +354,6 @@ 1495 } 1496 } 1497 } 1498- exit_curses(); 1499+ stop_curses(); 1500 ExitProgram(EXIT_SUCCESS); 1501 } 1502Index: test/lrtest.c 1503Prereq: 1.25 1504--- ncurses-6.1-20191207+/test/lrtest.c 2019-12-07 18:07:04.000000000 +0000 1505+++ ncurses-6.1-20191214/test/lrtest.c 2019-12-14 23:25:29.000000000 +0000 1506@@ -34,7 +34,7 @@ 1507 * This can't be part of the ncurses test-program, because ncurses rips off the 1508 * bottom line to do labels. 1509 * 1510- * $Id: lrtest.c,v 1.25 2019/12/07 18:07:04 tom Exp $ 1511+ * $Id: lrtest.c,v 1.26 2019/12/14 23:25:29 tom Exp $ 1512 */ 1513 1514 #include <test.priv.h> 1515@@ -174,7 +174,7 @@ 1516 refresh(); 1517 } 1518 1519- exit_curses(); 1520+ stop_curses(); 1521 ExitProgram(EXIT_SUCCESS); 1522 } 1523 1524Index: test/ncurses.c 1525Prereq: 1.520 1526--- ncurses-6.1-20191207+/test/ncurses.c 2019-12-07 19:04:52.000000000 +0000 1527+++ ncurses-6.1-20191214/test/ncurses.c 2019-12-14 23:25:29.000000000 +0000 1528@@ -40,7 +40,7 @@ 1529 Author: Eric S. Raymond <esr@snark.thyrsus.com> 1993 1530 Thomas E. Dickey (beginning revision 1.27 in 1996). 1531 1532-$Id: ncurses.c,v 1.520 2019/12/07 19:04:52 tom Exp $ 1533+$Id: ncurses.c,v 1.521 2019/12/14 23:25:29 tom Exp $ 1534 1535 ***************************************************************************/ 1536 1537@@ -7329,7 +7329,7 @@ 1538 delwin(win2); 1539 delwin(win1); 1540 erase(); 1541- exit_curses(); 1542+ stop_curses(); 1543 return OK; 1544 } 1545 1546@@ -7529,7 +7529,7 @@ 1547 delwin(win2); 1548 delwin(win1); 1549 erase(); 1550- exit_curses(); 1551+ stop_curses(); 1552 return OK; 1553 } 1554 #endif /* USE_WIDEC_SUPPORT */ 1555@@ -7619,7 +7619,7 @@ 1556 #endif 1557 Pause(); 1558 erase(); 1559- exit_curses(); 1560+ stop_curses(); 1561 return OK; 1562 } 1563 1564Index: test/newdemo.c 1565Prereq: 1.46 1566--- ncurses-6.1-20191207+/test/newdemo.c 2019-08-24 23:02:49.000000000 +0000 1567+++ ncurses-6.1-20191214/test/newdemo.c 2019-12-14 23:25:29.000000000 +0000 1568@@ -2,7 +2,7 @@ 1569 * newdemo.c - A demo program using PDCurses. The program illustrate 1570 * the use of colours for text output. 1571 * 1572- * $Id: newdemo.c,v 1.46 2019/08/24 23:02:49 tom Exp $ 1573+ * $Id: newdemo.c,v 1.47 2019/12/14 23:25:29 tom Exp $ 1574 */ 1575 1576 #include <test.priv.h> 1577@@ -50,7 +50,7 @@ 1578 static void 1579 trap(int sig GCC_UNUSED) 1580 { 1581- exit_curses(); 1582+ stop_curses(); 1583 ExitProgram(EXIT_FAILURE); 1584 } 1585 1586@@ -238,7 +238,7 @@ 1587 height = 14; /* Create a drawing window */ 1588 win = newwin(height, width, (LINES - height) / 2, (COLS - width) / 2); 1589 if (win == NULL) { 1590- exit_curses(); 1591+ stop_curses(); 1592 ExitProgram(EXIT_FAILURE); 1593 } 1594 1595@@ -362,6 +362,6 @@ 1596 if (WaitForUser(win) == 1) 1597 break; 1598 } 1599- exit_curses(); 1600+ stop_curses(); 1601 ExitProgram(EXIT_SUCCESS); 1602 } 1603Index: test/picsmap.c 1604Prereq: 1.130 1605--- ncurses-6.1-20191207+/test/picsmap.c 2019-08-24 23:07:34.000000000 +0000 1606+++ ncurses-6.1-20191214/test/picsmap.c 2019-12-14 23:51:39.000000000 +0000 1607@@ -26,7 +26,7 @@ 1608 * authorization. * 1609 ****************************************************************************/ 1610 /* 1611- * $Id: picsmap.c,v 1.130 2019/08/24 23:07:34 tom Exp $ 1612+ * $Id: picsmap.c,v 1.131 2019/12/14 23:51:39 tom Exp $ 1613 * 1614 * Author: Thomas E. Dickey 1615 * 1616@@ -103,7 +103,7 @@ 1617 #define P2I(n) (((int)(my_intptr_t)(n)) - 1) 1618 #define I2P(n) (void *)(my_intptr_t)((n) + 1) 1619 1620-#define stop_curses() if (in_curses) endwin() 1621+#define pause_curses() if (in_curses) stop_curses() 1622 1623 #define debugmsg if (debugging) logmsg 1624 #define debugmsg2 if (debugging) logmsg2 1625@@ -187,7 +187,7 @@ 1626 static void 1627 cleanup(int code) 1628 { 1629- stop_curses(); 1630+ pause_curses(); 1631 close_log(); 1632 ExitProgram(code); 1633 /* NOTREACHED */ 1634@@ -423,7 +423,7 @@ 1635 struct stat sb; 1636 1637 if (!quiet) { 1638- stop_curses(); 1639+ pause_curses(); 1640 printf("** %s\n", filename); 1641 } 1642 1643@@ -511,7 +511,7 @@ 1644 }; 1645 size_t n; 1646 1647- stop_curses(); 1648+ pause_curses(); 1649 1650 fflush(stdout); 1651 for (n = 0; n < SIZEOF(msg); n++) 1652@@ -524,7 +524,7 @@ 1653 { 1654 va_list ap; 1655 1656- stop_curses(); 1657+ pause_curses(); 1658 fflush(stdout); 1659 1660 va_start(ap, fmt); 1661@@ -1469,7 +1469,7 @@ 1662 init_palette(palette_path); 1663 } 1664 scrollok(stdscr, FALSE); 1665- exit_curses(); 1666+ stop_curses(); 1667 } 1668 } 1669 1670Index: test/rain.c 1671Prereq: 1.49 1672--- ncurses-6.1-20191207+/test/rain.c 2018-06-23 21:35:06.000000000 +0000 1673+++ ncurses-6.1-20191214/test/rain.c 2019-12-14 23:26:09.000000000 +0000 1674@@ -1,5 +1,5 @@ 1675 /**************************************************************************** 1676- * Copyright (c) 1998-2017,2018 Free Software Foundation, Inc. * 1677+ * Copyright (c) 1998-2018,2019 Free Software Foundation, Inc. * 1678 * * 1679 * Permission is hereby granted, free of charge, to any person obtaining a * 1680 * copy of this software and associated documentation files (the * 1681@@ -26,7 +26,7 @@ 1682 * authorization. * 1683 ****************************************************************************/ 1684 /* 1685- * $Id: rain.c,v 1.49 2018/06/23 21:35:06 tom Exp $ 1686+ * $Id: rain.c,v 1.50 2019/12/14 23:26:09 tom Exp $ 1687 */ 1688 #include <test.priv.h> 1689 #include <popup_msg.h> 1690@@ -78,7 +78,7 @@ 1691 static void 1692 onsig(int n GCC_UNUSED) 1693 { 1694- exit_curses(); 1695+ stop_curses(); 1696 ExitProgram(EXIT_FAILURE); 1697 } 1698 1699@@ -437,7 +437,7 @@ 1700 } 1701 napms(50); 1702 } 1703- exit_curses(); 1704+ stop_curses(); 1705 #ifdef USE_PTHREADS 1706 printf("Counts per thread:\n"); 1707 for (j = 0; j < MAX_THREADS; ++j) 1708Index: test/savescreen.c 1709Prereq: 1.55 1710--- ncurses-6.1-20191207+/test/savescreen.c 2019-01-20 15:59:28.000000000 +0000 1711+++ ncurses-6.1-20191214/test/savescreen.c 2019-12-14 23:25:29.000000000 +0000 1712@@ -26,7 +26,7 @@ 1713 * authorization. * 1714 ****************************************************************************/ 1715 /* 1716- * $Id: savescreen.c,v 1.55 2019/01/20 15:59:28 tom Exp $ 1717+ * $Id: savescreen.c,v 1.56 2019/12/14 23:25:29 tom Exp $ 1718 * 1719 * Demonstrate save/restore functions from the curses library. 1720 * Thomas Dickey - 2007/7/14 1721@@ -495,7 +495,7 @@ 1722 } 1723 move(0, 0); 1724 } else { 1725- exit_curses(); 1726+ stop_curses(); 1727 fprintf(stderr, "Cannot open \"%s\"\n", fill_by); 1728 ExitProgram(EXIT_FAILURE); 1729 } 1730@@ -507,14 +507,14 @@ 1731 * Use the last file as the initial/current screen. 1732 */ 1733 if (last < 0) { 1734- exit_curses(); 1735+ stop_curses(); 1736 printf("No screen-dumps given\n"); 1737 ExitProgram(EXIT_FAILURE); 1738 } 1739 1740 which = last; 1741 if (load_screen(files[which]) == ERR) { 1742- exit_curses(); 1743+ stop_curses(); 1744 printf("Cannot load screen-dump %s\n", files[which]); 1745 ExitProgram(EXIT_FAILURE); 1746 } 1747Index: test/tclock.c 1748Prereq: 1.39 1749--- ncurses-6.1-20191207+/test/tclock.c 2018-12-29 17:23:42.000000000 +0000 1750+++ ncurses-6.1-20191214/test/tclock.c 2019-12-14 23:25:29.000000000 +0000 1751@@ -1,4 +1,4 @@ 1752-/* $Id: tclock.c,v 1.39 2018/12/29 17:23:42 tom Exp $ */ 1753+/* $Id: tclock.c,v 1.40 2019/12/14 23:25:29 tom Exp $ */ 1754 1755 #define NEED_TIME_H 1756 #include <test.priv.h> 1757@@ -282,7 +282,7 @@ 1758 1759 } 1760 1761- exit_curses(); 1762+ stop_curses(); 1763 ExitProgram(EXIT_SUCCESS); 1764 } 1765 #else 1766Index: test/test.priv.h 1767Prereq: 1.183 1768--- ncurses-6.1-20191207+/test/test.priv.h 2019-12-07 19:03:20.000000000 +0000 1769+++ ncurses-6.1-20191214/test/test.priv.h 2019-12-14 23:25:29.000000000 +0000 1770@@ -29,7 +29,7 @@ 1771 /**************************************************************************** 1772 * Author: Thomas E. Dickey 1996-on * 1773 ****************************************************************************/ 1774-/* $Id: test.priv.h,v 1.183 2019/12/07 19:03:20 tom Exp $ */ 1775+/* $Id: test.priv.h,v 1.184 2019/12/14 23:25:29 tom Exp $ */ 1776 1777 #ifndef __TEST_PRIV_H 1778 #define __TEST_PRIV_H 1 1779@@ -885,9 +885,9 @@ 1780 * ncurses restores the cursor in endwin(). Other libraries may not. 1781 */ 1782 #ifdef NCURSES_VERSION 1783-#define exit_curses() endwin() 1784+#define stop_curses() endwin() 1785 #else 1786-#define exit_curses() do { endwin(); curs_set(1); } while (0) 1787+#define stop_curses() do { endwin(); curs_set(1); } while (0) 1788 #endif 1789 1790 /* ncurses implements tparm() with varargs, X/Open with a fixed-parameter list 1791@@ -904,7 +904,7 @@ 1792 #include <nc_alloc.h> 1793 #if HAVE_NC_FREEALL && defined(USE_TINFO) 1794 #undef ExitProgram 1795-#define ExitProgram(code) _nc_free_tinfo(code) 1796+#define ExitProgram(code) exit_terminfo(code) 1797 #endif 1798 #else 1799 #define typeMalloc(type,n) (type *) malloc((size_t)(n) * sizeof(type)) 1800Index: test/testcurs.c 1801Prereq: 1.54 1802--- ncurses-6.1-20191207+/test/testcurs.c 2019-12-07 18:06:12.000000000 +0000 1803+++ ncurses-6.1-20191214/test/testcurs.c 2019-12-14 23:25:29.000000000 +0000 1804@@ -6,7 +6,7 @@ 1805 * wrs(5/28/93) -- modified to be consistent (perform identically) with either 1806 * PDCurses or under Unix System V, R4 1807 * 1808- * $Id: testcurs.c,v 1.54 2019/12/07 18:06:12 tom Exp $ 1809+ * $Id: testcurs.c,v 1.55 2019/12/14 23:25:29 tom Exp $ 1810 */ 1811 1812 #include <test.priv.h> 1813@@ -73,7 +73,7 @@ 1814 height = 13; /* Create a drawing window */ 1815 *win = newwin(height, width, (LINES - height) / 2, (COLS - width) / 2); 1816 if (*win == NULL) { 1817- exit_curses(); 1818+ stop_curses(); 1819 return 0; 1820 } 1821 return 1; 1822@@ -557,7 +557,7 @@ 1823 1824 win1 = newwin(10, 50, 14, 25); 1825 if (win1 == NULL) { 1826- exit_curses(); 1827+ stop_curses(); 1828 return; 1829 } 1830 #ifdef A_COLOR 1831@@ -760,7 +760,7 @@ 1832 1833 delwin(win); 1834 1835- exit_curses(); 1836+ stop_curses(); 1837 #ifdef XCURSES 1838 XCursesExit(); 1839 #endif 1840Index: test/worm.c 1841Prereq: 1.80 1842--- ncurses-6.1-20191207+/test/worm.c 2019-12-07 19:04:09.000000000 +0000 1843+++ ncurses-6.1-20191214/test/worm.c 2019-12-14 23:25:29.000000000 +0000 1844@@ -52,7 +52,7 @@ 1845 traces will be dumped. The program stops and waits for one character of 1846 input at the beginning and end of the interval. 1847 1848- $Id: worm.c,v 1.80 2019/12/07 19:04:09 tom Exp $ 1849+ $Id: worm.c,v 1.81 2019/12/14 23:25:29 tom Exp $ 1850 */ 1851 1852 #include <test.priv.h> 1853@@ -215,7 +215,7 @@ 1854 failed(const char *s) 1855 { 1856 perror(s); 1857- exit_curses(); 1858+ stop_curses(); 1859 ExitProgram(EXIT_FAILURE); 1860 } 1861 #endif 1862@@ -224,7 +224,7 @@ 1863 cleanup(void) 1864 { 1865 USING_WINDOW1(stdscr, wrefresh, safe_wrefresh); 1866- exit_curses(); 1867+ stop_curses(); 1868 } 1869 1870 static void 1871Index: test/xmas.c 1872Prereq: 1.33 1873--- ncurses-6.1-20191207+/test/xmas.c 2017-09-30 19:14:13.000000000 +0000 1874+++ ncurses-6.1-20191214/test/xmas.c 2019-12-14 23:25:29.000000000 +0000 1875@@ -92,7 +92,7 @@ 1876 /******************************************************************************/ 1877 1878 /* 1879- * $Id: xmas.c,v 1.33 2017/09/30 19:14:13 tom Exp $ 1880+ * $Id: xmas.c,v 1.34 2019/12/14 23:25:29 tom Exp $ 1881 */ 1882 #include <test.priv.h> 1883 1884@@ -638,7 +638,7 @@ 1885 { 1886 move(LINES - 1, 0); 1887 refresh(); 1888- exit_curses(); 1889+ stop_curses(); 1890 1891 #if NO_LEAKS 1892 if (my_pairs != 0) 1893@@ -749,7 +749,7 @@ 1894 (w_holiday = newwin(1, 26, 3, 27)) == 0 || 1895 1896 (w_del_msg = newwin(1, 19, 23, 60)) == 0) { 1897- exit_curses(); 1898+ stop_curses(); 1899 fprintf(stderr, "Cannot create windows - screen too small\n"); 1900 ExitProgram(EXIT_FAILURE); 1901 } 1902