From 5f288254c618ae86f3811f2797e4d942061c9101 Mon Sep 17 00:00:00 2001 From: "Thomas E. Dickey" Date: Sun, 20 Oct 2019 01:10:33 +0000 Subject: [PATCH] ncurses 6.1 - patch 20191019 + modify make_hash to not require --disable-leaks, to simplify building with address-sanitizer. + modify tic to exit if it cannot remove a conflicting name, because treating that as a partial success can cause an infinite loop in use-resolution (report/testcase by Hongxu Chen, cf: 20111001). --- NEWS | 9 ++++++++- VERSION | 2 +- dist.mk | 4 ++-- ncurses/tinfo/comp_parse.c | 6 +++--- ncurses/tinfo/make_hash.c | 7 ++----- package/debian-mingw/changelog | 4 ++-- package/debian-mingw64/changelog | 4 ++-- package/debian/changelog | 4 ++-- package/mingw-ncurses.nsi | 4 ++-- package/mingw-ncurses.spec | 2 +- package/ncurses.spec | 2 +- package/ncursest.spec | 2 +- 12 files changed, 27 insertions(+), 23 deletions(-) diff --git a/NEWS b/NEWS index 509ff3fe..5244cbb7 100644 --- a/NEWS +++ b/NEWS @@ -25,7 +25,7 @@ -- sale, use or other dealings in this Software without prior written -- -- authorization. -- ------------------------------------------------------------------------------- --- $Id: NEWS,v 1.3393 2019/10/16 00:04:31 tom Exp $ +-- $Id: NEWS,v 1.3396 2019/10/19 21:16:45 tom Exp $ ------------------------------------------------------------------------------- This is a log of changes that ncurses has gone through since Zeyd started @@ -45,6 +45,13 @@ See the AUTHORS file for the corresponding full names. Changes through 1.9.9e did not credit all contributions; it is not possible to add this information. +20191019 + + modify make_hash to not require --disable-leaks, to simplify building + with address-sanitizer. + + modify tic to exit if it cannot remove a conflicting name, because + treating that as a partial success can cause an infinite loop in + use-resolution (report/testcase by Hongxu Chen, cf: 20111001). + 20191015 + improve buffer-checks in captoinfo.c, for some cases when the input string is shorter than expected. diff --git a/VERSION b/VERSION index 0e4e4761..56fbfa2d 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -5:0:10 6.1 20191015 +5:0:10 6.1 20191019 diff --git a/dist.mk b/dist.mk index 66ba0ddf..13d3daa1 100644 --- a/dist.mk +++ b/dist.mk @@ -25,7 +25,7 @@ # use or other dealings in this Software without prior written # # authorization. # ############################################################################## -# $Id: dist.mk,v 1.1310 2019/10/15 21:46:57 tom Exp $ +# $Id: dist.mk,v 1.1311 2019/10/19 12:47:53 tom Exp $ # Makefile for creating ncurses distributions. # # This only needs to be used directly as a makefile by developers, but @@ -37,7 +37,7 @@ SHELL = /bin/sh # These define the major/minor/patch versions of ncurses. NCURSES_MAJOR = 6 NCURSES_MINOR = 1 -NCURSES_PATCH = 20191015 +NCURSES_PATCH = 20191019 # We don't append the patch to the version, since this only applies to releases VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR) diff --git a/ncurses/tinfo/comp_parse.c b/ncurses/tinfo/comp_parse.c index 24c4852d..52901f13 100644 --- a/ncurses/tinfo/comp_parse.c +++ b/ncurses/tinfo/comp_parse.c @@ -1,5 +1,5 @@ /**************************************************************************** - * Copyright (c) 1998-2017,2018 Free Software Foundation, Inc. * + * Copyright (c) 1998-2018,2019 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 * @@ -47,7 +47,7 @@ #include -MODULE_ID("$Id: comp_parse.c,v 1.106 2018/05/26 14:16:46 tom Exp $") +MODULE_ID("$Id: comp_parse.c,v 1.107 2019/10/19 20:47:43 tom Exp $") static void sanity_check2(TERMTYPE2 *, bool); NCURSES_IMPEXP void NCURSES_API(*_nc_check_termtype2) (TERMTYPE2 *, bool) = sanity_check2; @@ -180,11 +180,11 @@ remove_collision(char *n1, char *n2) ++qend; while ((*qstart++ = *qend++) != '\0') ; fprintf(stderr, "...now\t%s\n", p2); + removed = TRUE; } else { fprintf(stderr, "Cannot remove alias '%.*s'\n", (int) (qend - qstart), qstart); } - removed = TRUE; break; } } diff --git a/ncurses/tinfo/make_hash.c b/ncurses/tinfo/make_hash.c index d5f94182..906dfafa 100644 --- a/ncurses/tinfo/make_hash.c +++ b/ncurses/tinfo/make_hash.c @@ -43,7 +43,7 @@ #include -MODULE_ID("$Id: make_hash.c,v 1.28 2019/07/27 23:06:54 tom Exp $") +MODULE_ID("$Id: make_hash.c,v 1.29 2019/10/19 21:02:19 tom Exp $") /* * _nc_make_hash_table() @@ -164,13 +164,11 @@ parse_columns(char *buffer) int col = 0; -#if NO_LEAKS if (buffer == 0) { free(list); list = 0; return 0; } -#endif if (*buffer != '#') { if (list == 0) { @@ -433,12 +431,11 @@ main(int argc, char **argv) } free(hash_table); -#if NO_LEAKS for (n = 0; (n < tablesize); ++n) { free((void *) name_table[n].ute_name); } free(name_table); parse_columns(0); -#endif + return EXIT_SUCCESS; } diff --git a/package/debian-mingw/changelog b/package/debian-mingw/changelog index 65032439..d989a882 100644 --- a/package/debian-mingw/changelog +++ b/package/debian-mingw/changelog @@ -1,8 +1,8 @@ -ncurses6 (6.1+20191015) unstable; urgency=low +ncurses6 (6.1+20191019) unstable; urgency=low * latest weekly patch - -- Thomas E. Dickey Tue, 15 Oct 2019 17:46:57 -0400 + -- Thomas E. Dickey Sat, 19 Oct 2019 08:47:53 -0400 ncurses6 (5.9-20131005) unstable; urgency=low diff --git a/package/debian-mingw64/changelog b/package/debian-mingw64/changelog index 65032439..d989a882 100644 --- a/package/debian-mingw64/changelog +++ b/package/debian-mingw64/changelog @@ -1,8 +1,8 @@ -ncurses6 (6.1+20191015) unstable; urgency=low +ncurses6 (6.1+20191019) unstable; urgency=low * latest weekly patch - -- Thomas E. Dickey Tue, 15 Oct 2019 17:46:57 -0400 + -- Thomas E. Dickey Sat, 19 Oct 2019 08:47:53 -0400 ncurses6 (5.9-20131005) unstable; urgency=low diff --git a/package/debian/changelog b/package/debian/changelog index 08605a4f..5d9407be 100644 --- a/package/debian/changelog +++ b/package/debian/changelog @@ -1,8 +1,8 @@ -ncurses6 (6.1+20191015) unstable; urgency=low +ncurses6 (6.1+20191019) unstable; urgency=low * latest weekly patch - -- Thomas E. Dickey Tue, 15 Oct 2019 17:46:57 -0400 + -- Thomas E. Dickey Sat, 19 Oct 2019 08:47:53 -0400 ncurses6 (5.9-20120608) unstable; urgency=low diff --git a/package/mingw-ncurses.nsi b/package/mingw-ncurses.nsi index d91112de..477c8e63 100644 --- a/package/mingw-ncurses.nsi +++ b/package/mingw-ncurses.nsi @@ -1,4 +1,4 @@ -; $Id: mingw-ncurses.nsi,v 1.356 2019/10/15 21:46:57 tom Exp $ +; $Id: mingw-ncurses.nsi,v 1.357 2019/10/19 12:47:53 tom Exp $ ; TODO add examples ; TODO bump ABI to 6 @@ -10,7 +10,7 @@ !define VERSION_MAJOR "6" !define VERSION_MINOR "1" !define VERSION_YYYY "2019" -!define VERSION_MMDD "1015" +!define VERSION_MMDD "1019" !define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD} !define MY_ABI "5" diff --git a/package/mingw-ncurses.spec b/package/mingw-ncurses.spec index 8f10c475..0a21e211 100644 --- a/package/mingw-ncurses.spec +++ b/package/mingw-ncurses.spec @@ -3,7 +3,7 @@ Summary: shared libraries for terminal handling Name: mingw32-ncurses6 Version: 6.1 -Release: 20191015 +Release: 20191019 License: X11 Group: Development/Libraries Source: ncurses-%{version}-%{release}.tgz diff --git a/package/ncurses.spec b/package/ncurses.spec index 84b734ce..f8e10072 100644 --- a/package/ncurses.spec +++ b/package/ncurses.spec @@ -1,7 +1,7 @@ Summary: shared libraries for terminal handling Name: ncurses6 Version: 6.1 -Release: 20191015 +Release: 20191019 License: X11 Group: Development/Libraries Source: ncurses-%{version}-%{release}.tgz diff --git a/package/ncursest.spec b/package/ncursest.spec index 94556487..dc2a7cda 100644 --- a/package/ncursest.spec +++ b/package/ncursest.spec @@ -1,7 +1,7 @@ Summary: Curses library with POSIX thread support. Name: ncursest6 Version: 6.1 -Release: 20191015 +Release: 20191019 License: X11 Group: Development/Libraries Source: ncurses-%{version}-%{release}.tgz -- 2.45.0