ncurses 6.1 - patch 20180217
authorThomas E. Dickey <dickey@invisible-island.net>
Sun, 18 Feb 2018 01:45:21 +0000 (01:45 +0000)
committerThomas E. Dickey <dickey@invisible-island.net>
Sun, 18 Feb 2018 01:45:21 +0000 (01:45 +0000)
+ remove incorrect free() from 20170617 changes (report by David Macek).
+ correct type for "U8" in user_caps.5; it is a number not boolean.
+ add a null-pointer check in safe_sprintf.c (report by Steven Noonan).
+ improve fix for Debian #882620 by reusing limit2 variable (report
  Julien Cristau, Sven Cristau).

17 files changed:
NEWS
VERSION
dist.mk
man/user_caps.5
ncurses/base/safe_sprintf.c
ncurses/tinfo/lib_setup.c
ncurses/tinfo/write_entry.c
package/debian-mingw/changelog
package/debian-mingw64/changelog
package/debian/changelog
package/debian/rules
package/mingw-ncurses.nsi
package/mingw-ncurses.spec
package/ncurses.spec
test/demo_defkey.c
test/list_keys.c
test/picsmap.c

diff --git a/NEWS b/NEWS
index 325753d66c279e1b8ebc4dade5304a9b270ea5e7..ab0604c8cfdae496b3acbbed3a6eed122b64de75 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -25,7 +25,7 @@
 -- sale, use or other dealings in this Software without prior written        --
 -- authorization.                                                            --
 -------------------------------------------------------------------------------
--- $Id: NEWS,v 1.3080 2018/02/10 20:36:21 tom Exp $
+-- $Id: NEWS,v 1.3085 2018/02/17 21:27:10 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.
 
+20180217
+       + remove incorrect free() from 20170617 changes (report by David Macek).
+       + correct type for "U8" in user_caps.5; it is a number not boolean.
+       + add a null-pointer check in safe_sprintf.c (report by Steven Noonan).
+       + improve fix for Debian #882620 by reusing limit2 variable (report
+         Julien Cristau, Sven Cristau).
+
 20180210
        + modify misc/Makefile.in to install/uninstall explicit list in case
          the build-directory happens to have no ".pc" files when an uninstall
diff --git a/VERSION b/VERSION
index 9f7691aa4ed591df8a7234eb0b0232b63727eb03..f4d4fbcc3c15876d2d67bf803ba0319a5e6e3be7 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-5:0:10 6.1     20180210
+5:0:10 6.1     20180217
diff --git a/dist.mk b/dist.mk
index 10379db3e2551d42cc352318cd8d6330c71b8abe..0b00dac831334bdbab26037636c579cff32fd258 100644 (file)
--- 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.1210 2018/02/10 13:15:08 tom Exp $
+# $Id: dist.mk,v 1.1211 2018/02/11 20:16:59 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 = 20180210
+NCURSES_PATCH = 20180217
 
 # We don't append the patch to the version, since this only applies to releases
 VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
index 04830cb8ceac841fe2a1a27860789023887040fc..592b35bcd79c74fa06ebde0cadf6e1b8429cf914 100644 (file)
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: user_caps.5,v 1.6 2018/02/03 22:38:17 tom Exp $
+.\" $Id: user_caps.5,v 1.7 2018/02/17 19:07:01 tom Exp $
 .TH user_caps 5
 .ie \n(.g .ds `` \(lq
 .el       .ds `` ``
@@ -211,7 +211,7 @@ As a trivial case, for example, one could define \fBRGB#1\fP
 to represent the standard eight ANSI colors, i.e., one bit per color.
 .TP 3
 U8
-\fIboolean\fP,
+\fInumber\fP,
 asserts that ncurses must use Unicode values for line-drawing characters,
 and that it should ignore the alternate character set capabilities
 when the locale uses UTF-8 encoding.
index 6c17286ba5c3089d80fa3598e390841a47680b64..22db3ba7fde1c7617ce944cba30d5c1a7c863483 100644 (file)
@@ -33,7 +33,7 @@
 #include <curses.priv.h>
 #include <ctype.h>
 
-MODULE_ID("$Id: safe_sprintf.c,v 1.29 2018/02/10 17:52:19 tom Exp $")
+MODULE_ID("$Id: safe_sprintf.c,v 1.31 2018/02/17 21:19:41 tom Exp $")
 
 #if USE_SAFE_SPRINTF
 
@@ -224,11 +224,7 @@ NCURSES_SP_NAME(_nc_printf_string) (NCURSES_SP_DCLx
 {
     char *result = 0;
 
-#if NCURSES_SP_FUNCS
-    (void) sp;
-#endif
-
-    if (fmt != 0) {
+    if (SP_PARM != 0 && fmt != 0) {
 #if USE_SAFE_SPRINTF
        va_list ap2;
        int len;
index 33cf2f96195f3ee06010e66b7abbadcf7d4a6346..a4b87e3b887daf3812b9d592bb660d7b2b99a176 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2016,2017 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2017,2018 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            *
@@ -48,7 +48,7 @@
 #include <locale.h>
 #endif
 
-MODULE_ID("$Id: lib_setup.c,v 1.188 2017/07/01 18:24:50 tom Exp $")
+MODULE_ID("$Id: lib_setup.c,v 1.189 2018/02/17 21:23:32 tom Exp $")
 
 /****************************************************************************
  *
@@ -722,8 +722,6 @@ TINFO_SETUP_TERM(TERMINAL **tp,
            termp->Filedes = (short) Filedes;
            termp->_termname = strdup(tname);
        } else {
-           _nc_free_termtype2(&TerminalType(termp));
-           free(my_tcb);
            ret_error0(errret ? *errret : TGETENT_ERR,
                       "Could not find any driver to handle this terminal.\n");
        }
index cc3f83ac6a6cc57a0f584a5a41bfdfc573189f32..f55686fe11c1b9a1a422fc077903418198e86f08 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2015,2017 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2017,2018 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            *
@@ -50,7 +50,7 @@
 #define TRACE_NUM(n)           /* nothing */
 #endif
 
-MODULE_ID("$Id: write_entry.c,v 1.101 2017/11/25 19:56:06 tom Exp $")
+MODULE_ID("$Id: write_entry.c,v 1.102 2018/02/11 20:24:28 Julien.Cristau Exp $")
 
 static int total_written;
 static int total_parts;
@@ -377,7 +377,7 @@ _nc_write_entry(TERMTYPE2 *const tp)
        start_time = 0;
     }
 
-    if (strlen(first_name) >= sizeof(filename) - (2 + LEAF_LEN)) {
+    if (strlen(first_name) >= limit2) {
        _nc_warning("terminal name too long.");
        saved = first_name[limit2];
        first_name[limit2] = '\0';
index 674541a9df1d6d7a6eff32791fae72fef83dce51..365a42945fe9eae11e5a68e2b03c9e4daf903c1f 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (6.1+20180210) unstable; urgency=low
+ncurses6 (6.1+20180217) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 10 Feb 2018 08:15:08 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sun, 11 Feb 2018 15:16:59 -0500
 
 ncurses6 (5.9-20131005) unstable; urgency=low
 
index 674541a9df1d6d7a6eff32791fae72fef83dce51..365a42945fe9eae11e5a68e2b03c9e4daf903c1f 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (6.1+20180210) unstable; urgency=low
+ncurses6 (6.1+20180217) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 10 Feb 2018 08:15:08 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sun, 11 Feb 2018 15:16:59 -0500
 
 ncurses6 (5.9-20131005) unstable; urgency=low
 
index 31e4ae92e0ada0a1c5d519140b576197ede8686d..494e11ab8451f39a4eedb07304950552adc26eac 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (6.1+20180210) unstable; urgency=low
+ncurses6 (6.1+20180217) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 10 Feb 2018 08:15:08 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sun, 11 Feb 2018 15:16:59 -0500
 
 ncurses6 (5.9-20120608) unstable; urgency=low
 
index f5297f0c8aacfa63a03a492f331f8c1e04164127..6dd38f78006a5e4b6a407810f8723bf92fad1a12 100755 (executable)
@@ -80,7 +80,7 @@ configure = \
                --with-develop \
                --with-extra-suffix=$(MY_ABI) \
                --with-shared \
-               --with-terminfo-dirs=$(MYDATA):/usr/share/terminfo \
+               --with-terminfo-dirs=$(MYDATA):/lib/terminfo:/usr/share/terminfo \
                --with-termlib \
                --with-ticlib \
                --with-trace \
index 49d42e5ed69b66124a3433b487978c37b5fbcb21..3fd4ae51f7574664f48d83d85153ccfa3a117032 100644 (file)
@@ -1,4 +1,4 @@
-; $Id: mingw-ncurses.nsi,v 1.257 2018/02/10 13:15:08 tom Exp $\r
+; $Id: mingw-ncurses.nsi,v 1.258 2018/02/11 20:16:59 tom Exp $\r
 \r
 ; TODO add examples\r
 ; TODO bump ABI to 6\r
@@ -10,7 +10,7 @@
 !define VERSION_MAJOR "6"\r
 !define VERSION_MINOR "1"\r
 !define VERSION_YYYY  "2018"\r
-!define VERSION_MMDD  "0210"\r
+!define VERSION_MMDD  "0217"\r
 !define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}\r
 \r
 !define MY_ABI   "5"\r
index ab944435f205383897688dde094dd1e7f3dea5ba..64861fa0ae914f0dcfe49987d4bfeefbc1adca63 100644 (file)
@@ -3,7 +3,7 @@
 Summary: shared libraries for terminal handling
 Name: mingw32-ncurses6
 Version: 6.1
-Release: 20180210
+Release: 20180217
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
index 3c95adafd8d2d4b9fccdc3535c994a1358c48cc5..16b4d4d8feb0fef23e26e7526db02b6a9e63b420 100644 (file)
@@ -1,7 +1,7 @@
 Summary: shared libraries for terminal handling
 Name: ncurses6
 Version: 6.1
-Release: 20180210
+Release: 20180217
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
index 39b8f292dfedf23656359917d97f1ed1e266d74c..616a855722ba2ef1d14c4515e50e601722d75d2c 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 2002-2016,2017 Free Software Foundation, Inc.              *
+ * Copyright (c) 2002-2017,2018 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            *
@@ -26,7 +26,7 @@
  * authorization.                                                           *
  ****************************************************************************/
 /*
- * $Id: demo_defkey.c,v 1.27 2017/04/09 23:57:56 tom Exp $
+ * $Id: demo_defkey.c,v 1.28 2018/02/12 09:57:31 tom Exp $
  *
  * Demonstrate the define_key() function.
  * Thomas Dickey - 2002/11/23
@@ -187,9 +187,9 @@ duplicate(WINDOW *win, NCURSES_CONST char *name, int code)
        const char *prefix = 0;
        char temp[BUFSIZ];
 
-       if (!strncmp(value, "\033[", (size_t) 2)) {
+       if (!(strncmp) (value, "\033[", (size_t) 2)) {
            prefix = "\033O";
-       } else if (!strncmp(value, "\033O", (size_t) 2)) {
+       } else if (!(strncmp) (value, "\033O", (size_t) 2)) {
            prefix = "\033[";
        }
        if (prefix != 0) {
index 6df2b0789da72dd8d9efe9e75b6360a66f221f47..2000a44e767490006596cd64d36436fb77bb1d9d 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 2016,2017 Free Software Foundation, Inc.                   *
+ * Copyright (c) 2016-2017,2018 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            *
@@ -26,7 +26,7 @@
  * authorization.                                                           *
  ****************************************************************************/
 /*
- * $Id: list_keys.c,v 1.22 2017/08/12 17:28:23 tom Exp $
+ * $Id: list_keys.c,v 1.23 2018/02/12 09:57:31 tom Exp $
  *
  * Author: Thomas E Dickey
  *
@@ -298,7 +298,7 @@ list_keys(TERMINAL **terms, int count)
        Type(j) = ktOther;
        if (sscanf(strnames[j], "kf%d", &k) == 1) {
            Type(j) = ktFunction;
-       } else if (!strncmp(strnames[j], "kcu", 3)) {
+       } else if (!(strncmp) (strnames[j], "kcu", 3)) {
            Type(j) = ktCursor;
        }
        Name(j) = strnames[j];
index ccfe57b4a39ba1787efcdb79c1f272c10322950d..a18651822868ff0523275f1ef00c8384f41aab27 100644 (file)
@@ -26,7 +26,7 @@
  * authorization.                                                           *
  ****************************************************************************/
 /*
- * $Id: picsmap.c,v 1.116 2018/01/16 09:14:52 tom Exp $
+ * $Id: picsmap.c,v 1.117 2018/02/12 09:57:31 tom Exp $
  *
  * Author: Thomas E. Dickey
  *
@@ -589,7 +589,7 @@ read_palette(const char *filename)
                    if (*t == '-') {
                        if (sscanf(t, "-%d%c", &num, &chr) == 2 &&
                            chr == 'c' &&
-                           !strncmp(strchr(t, chr), "color", 5)) {
+                           !(strncmp) (strchr(t, chr), "color", 5)) {
                            found = 1;
                        }
                        break;
@@ -597,7 +597,7 @@ read_palette(const char *filename)
                    ++t;
                }
                if (found && (t != s)
-                   && strncmp(s, "xterm", (size_t) (t - s))) {
+                   && (strncmp) (s, "xterm", (size_t) (t - s))) {
                    sprintf(s, "xterm%s", filename + (t - s));
                } else {
                    continue;
@@ -1204,7 +1204,7 @@ parse_xpm(char **data)
                            /* should not happen... */
                            continue;
                        }
-                       if (!strncmp(cs, list[c], (size_t) cpp)) {
+                       if (!(strncmp) (cs, list[c], (size_t) cpp)) {
                            result->cells[which].ch = list[c][0];
                            result->cells[which].fg = c;
                            result->fgcol[c].count++;
@@ -1279,7 +1279,7 @@ parse_img(const char *filename)
            size_t n = strlen(filename);
            debugmsg2("...read %s", buffer);
            if (strlen(buffer) > n &&
-               !strncmp(buffer, filename, n) &&
+               !(strncmp) (buffer, filename, n) &&
                isspace(UChar(buffer[n])) &&
                sscanf(skip_word(buffer + n), " %dx%d ", &pic_x, &pic_y) == 2) {
                /* distort image to make it show normally on terminal */