From 51eb1b8fa89ca7c3837f48b842fb3150a24bd759 Mon Sep 17 00:00:00 2001 From: Zach van Rijn Date: Tue, 19 Apr 2022 13:57:05 -0500 Subject: system/ncurses: bump { 20220129 --> 20220416 }. add maintenance script. fixes #531. --- system/ncurses/ncurses-6.3-20211106.patch | 404 ++++++++++++++++++++++++++++++ 1 file changed, 404 insertions(+) create mode 100644 system/ncurses/ncurses-6.3-20211106.patch (limited to 'system/ncurses/ncurses-6.3-20211106.patch') diff --git a/system/ncurses/ncurses-6.3-20211106.patch b/system/ncurses/ncurses-6.3-20211106.patch new file mode 100644 index 000000000..894a742d3 --- /dev/null +++ b/system/ncurses/ncurses-6.3-20211106.patch @@ -0,0 +1,404 @@ +# ncurses 6.3 - patch 20211106 - Thomas E. Dickey +# +# ------------------------------------------------------------------------------ +# +# Ncurses 6.3 is at +# ftp://ftp.invisible-island.net/ncurses/ +# https://invisible-mirror.net/archives/ncurses/ +# +# Patches for ncurses 6.3 can be found at +# ftp://ftp.invisible-island.net/ncurses//6.3 +# https://invisible-mirror.net/archives/ncurses//6.3 +# +# ------------------------------------------------------------------------------ +# ftp://ftp.invisible-island.net/ncurses//6.3/ncurses-6.3-20211106.patch.gz +# patch by Thomas E. Dickey +# created Sun Nov 7 00:20:43 UTC 2021 +# ------------------------------------------------------------------------------ +# NEWS | 10 +++++++++- +# VERSION | 2 +- +# dist.mk | 4 ++-- +# misc/Makefile.in | 4 ++-- +# ncurses/base/lib_delwin.c | 33 ++++++++++++++++++++------------- +# ncurses/base/lib_freeall.c | 5 ++++- +# ncurses/base/lib_refresh.c | 22 +++++++++++++++------- +# ncurses/tinfo/lib_cur_term.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 +- +# panel/p_new.c | 4 ++-- +# 16 files changed, 71 insertions(+), 42 deletions(-) +# ------------------------------------------------------------------------------ +Index: NEWS +Prereq: 1.3738 +--- ncurses-6.3-20211030+/NEWS 2021-10-31 00:31:12.000000000 +0000 ++++ ncurses-6.3-20211106/NEWS 2021-11-06 23:43:40.000000000 +0000 +@@ -26,7 +26,7 @@ + -- sale, use or other dealings in this Software without prior written -- + -- authorization. -- + ------------------------------------------------------------------------------- +--- $Id: NEWS,v 1.3738 2021/10/31 00:31:12 tom Exp $ ++-- $Id: NEWS,v 1.3741 2021/11/06 23:43:40 tom Exp $ + ------------------------------------------------------------------------------- + + This is a log of changes that ncurses has gone through since Zeyd started +@@ -46,6 +46,14 @@ + Changes through 1.9.9e did not credit all contributions; + it is not possible to add this information. + ++20211106 ++ + improve check in misc/Makefile.in for empty $PKG_CONFIG_LIBDIR ++ + modify wnoutrefresh to call pnoutrefresh if its parameter is a pad, ++ rather than treating it as an error, and modify new_panel to permit ++ its window-parameter to be a pad (report by Giorgos Xou). ++ + fix a memory-leak in del_curterm (prompted by discussion with Bram ++ Moolenaar, cf: 20210821). ++ + 20211030 + + simplify some references to WINDOWS._flags using macros. + + add a "check" rule in Ada95 makefile, to help with test-packages. +Index: VERSION +--- ncurses-6.3-20211030+/VERSION 2021-10-30 08:33:19.000000000 +0000 ++++ ncurses-6.3-20211106/VERSION 2021-11-06 08:19:47.000000000 +0000 +@@ -1 +1 @@ +-5:0:10 6.3 20211030 ++5:0:10 6.3 20211106 +Index: dist.mk +Prereq: 1.1447 +--- ncurses-6.3-20211030+/dist.mk 2021-10-30 08:33:19.000000000 +0000 ++++ ncurses-6.3-20211106/dist.mk 2021-11-06 08:19:47.000000000 +0000 +@@ -26,7 +26,7 @@ + # use or other dealings in this Software without prior written # + # authorization. # + ############################################################################## +-# $Id: dist.mk,v 1.1447 2021/10/30 08:33:19 tom Exp $ ++# $Id: dist.mk,v 1.1448 2021/11/06 08:19:47 tom Exp $ + # Makefile for creating ncurses distributions. + # + # This only needs to be used directly as a makefile by developers, but +@@ -38,7 +38,7 @@ + # These define the major/minor/patch versions of ncurses. + NCURSES_MAJOR = 6 + NCURSES_MINOR = 3 +-NCURSES_PATCH = 20211030 ++NCURSES_PATCH = 20211106 + + # We don't append the patch to the version, since this only applies to releases + VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR) +Index: misc/Makefile.in +Prereq: 1.78 +--- ncurses-6.3-20211030+/misc/Makefile.in 2021-07-03 19:07:50.000000000 +0000 ++++ ncurses-6.3-20211106/misc/Makefile.in 2021-11-06 23:36:12.000000000 +0000 +@@ -1,4 +1,4 @@ +-# $Id: Makefile.in,v 1.78 2021/07/03 19:07:50 tom Exp $ ++# $Id: Makefile.in,v 1.79 2021/11/06 23:36:12 tom Exp $ + ############################################################################## + # Copyright 2018-2020,2021 Thomas E. Dickey # + # Copyright 1998-2016,2017 Free Software Foundation, Inc. # +@@ -147,7 +147,7 @@ + # directory during this rule: + @MAKE_PC_FILES@install \ + @MAKE_PC_FILES@install.libs :: pc-files +-@MAKE_PC_FILES@ @$(SHELL) -c 'case "x$(DESTDIR)$(PKG_CONFIG_LIBDIR)" in \ ++@MAKE_PC_FILES@ @$(SHELL) -c 'case "x$(PKG_CONFIG_LIBDIR)" in \ + @MAKE_PC_FILES@ x/*) \ + @MAKE_PC_FILES@ mkdir -p $(DESTDIR)$(PKG_CONFIG_LIBDIR); \ + @MAKE_PC_FILES@ for name in $(PC_FILES); do \ +Index: ncurses/base/lib_delwin.c +Prereq: 1.21 +--- ncurses-6.3-20211030+/ncurses/base/lib_delwin.c 2020-02-02 23:34:34.000000000 +0000 ++++ ncurses-6.3-20211106/ncurses/base/lib_delwin.c 2021-11-06 21:54:14.000000000 +0000 +@@ -1,5 +1,5 @@ + /**************************************************************************** +- * Copyright 2020 Thomas E. Dickey * ++ * Copyright 2020,2021 Thomas E. Dickey * + * Copyright 1998-2008,2009 Free Software Foundation, Inc. * + * * + * Permission is hereby granted, free of charge, to any person obtaining a * +@@ -43,24 +43,28 @@ + + #include + +-MODULE_ID("$Id: lib_delwin.c,v 1.21 2020/02/02 23:34:34 tom Exp $") ++MODULE_ID("$Id: lib_delwin.c,v 1.22 2021/11/06 21:54:14 tom Exp $") + + static bool + cannot_delete(WINDOW *win) + { + WINDOWLIST *p; + bool result = TRUE; ++ if (IS_PAD(win)) { ++ result = FALSE; ++ } else { + #ifdef USE_SP_WINDOWLIST +- SCREEN *sp = _nc_screen_of(win); ++ SCREEN *sp = _nc_screen_of(win); + #endif + +- for (each_window(SP_PARM, p)) { +- if (&(p->win) == win) { +- result = FALSE; +- } else if ((p->win._flags & _SUBWIN) != 0 +- && p->win._parent == win) { +- result = TRUE; +- break; ++ for (each_window(SP_PARM, p)) { ++ if (&(p->win) == win) { ++ result = FALSE; ++ } else if (IS_SUBWIN(&(p->win)) ++ && p->win._parent == win) { ++ result = TRUE; ++ break; ++ } + } + } + return result; +@@ -77,15 +81,18 @@ + if (win == 0 + || cannot_delete(win)) { + result = ERR; ++ } else if (IS_PAD(win)) { ++ win->_parent = NULL; ++ result = OK; + } else { + #if NCURSES_SP_FUNCS + SCREEN *sp = _nc_screen_of(win); + #endif +- if (win->_flags & _SUBWIN) ++ if (IS_SUBWIN(win)) { + touchwin(win->_parent); +- else if (CurScreen(SP_PARM) != 0) ++ } else if (CurScreen(SP_PARM) != 0) { + touchwin(CurScreen(SP_PARM)); +- ++ } + result = _nc_freewin(win); + } + _nc_unlock_global(curses); +Index: ncurses/base/lib_freeall.c +Prereq: 1.75 +--- ncurses-6.3-20211030+/ncurses/base/lib_freeall.c 2021-10-23 18:53:46.000000000 +0000 ++++ ncurses-6.3-20211106/ncurses/base/lib_freeall.c 2021-11-06 21:52:49.000000000 +0000 +@@ -40,7 +40,7 @@ + extern int malloc_errfd; /* FIXME */ + #endif + +-MODULE_ID("$Id: lib_freeall.c,v 1.75 2021/10/23 18:53:46 tom Exp $") ++MODULE_ID("$Id: lib_freeall.c,v 1.76 2021/11/06 21:52:49 tom Exp $") + + /* + * Free all ncurses data. This is used for testing only (there's no practical +@@ -78,6 +78,9 @@ + WINDOW *p_win = &(p->win); + bool found = FALSE; + ++ if (IS_PAD(p_win)) ++ continue; ++ + #ifndef USE_SP_WINDOWLIST + if (p->screen != SP_PARM) + continue; +Index: ncurses/base/lib_refresh.c +Prereq: 1.46 +--- ncurses-6.3-20211030+/ncurses/base/lib_refresh.c 2020-02-02 23:34:34.000000000 +0000 ++++ ncurses-6.3-20211106/ncurses/base/lib_refresh.c 2021-11-06 22:22:03.000000000 +0000 +@@ -1,5 +1,5 @@ + /**************************************************************************** +- * Copyright 2020 Thomas E. Dickey * ++ * Copyright 2020,2021 Thomas E. Dickey * + * Copyright 1998-2010,2011 Free Software Foundation, Inc. * + * * + * Permission is hereby granted, free of charge, to any person obtaining a * +@@ -43,7 +43,7 @@ + + #include + +-MODULE_ID("$Id: lib_refresh.c,v 1.46 2020/02/02 23:34:34 tom Exp $") ++MODULE_ID("$Id: lib_refresh.c,v 1.47 2021/11/06 22:22:03 tom Exp $") + + NCURSES_EXPORT(int) + wrefresh(WINDOW *win) +@@ -92,13 +92,21 @@ + + T((T_CALLED("wnoutrefresh(%p)"), (void *) win)); + +- /* +- * This function will break badly if we try to refresh a pad. +- */ +- if ((win == 0) +- || (win->_flags & _ISPAD)) ++ if (win == NULL) + returnCode(ERR); + ++ /* ++ * Handle pads as a special case. ++ */ ++ if (IS_PAD(win)) { ++ returnCode(pnoutrefresh(win, ++ win->_pad._pad_y, ++ win->_pad._pad_x, ++ win->_pad._pad_top, ++ win->_pad._pad_left, ++ win->_pad._pad_bottom, ++ win->_pad._pad_right)); ++ } + #ifdef TRACE + if (USE_TRACEF(TRACE_UPDATE)) { + _tracedump("...win", win); +Index: ncurses/tinfo/lib_cur_term.c +Prereq: 1.43 +--- ncurses-6.3-20211030+/ncurses/tinfo/lib_cur_term.c 2020-10-24 18:54:32.000000000 +0000 ++++ ncurses-6.3-20211106/ncurses/tinfo/lib_cur_term.c 2021-11-06 19:04:21.000000000 +0000 +@@ -1,5 +1,5 @@ + /**************************************************************************** +- * Copyright 2020 Thomas E. Dickey * ++ * Copyright 2020,2021 Thomas E. Dickey * + * Copyright 1998-2016,2017 Free Software Foundation, Inc. * + * * + * Permission is hereby granted, free of charge, to any person obtaining a * +@@ -41,7 +41,7 @@ + #include /* ospeed */ + #include /* VALID_STRING */ + +-MODULE_ID("$Id: lib_cur_term.c,v 1.43 2020/10/24 18:54:32 tom Exp $") ++MODULE_ID("$Id: lib_cur_term.c,v 1.44 2021/11/06 19:04:21 tom Exp $") + + #undef CUR + #define CUR TerminalType(termp). +@@ -167,10 +167,13 @@ + /* discard memory used in tgetent's cache for this terminal */ + _nc_tgetent_leak(termp); + #endif ++ free(termp->tparm_state.fmt_buff); ++ free(termp->tparm_state.out_buff); + free(termp); + + rc = OK; + } ++ + returnCode(rc); + } + +Index: package/debian-mingw/changelog +--- ncurses-6.3-20211030+/package/debian-mingw/changelog 2021-10-30 08:33:19.000000000 +0000 ++++ ncurses-6.3-20211106/package/debian-mingw/changelog 2021-11-06 08:19:47.000000000 +0000 +@@ -1,8 +1,8 @@ +-ncurses6 (6.3+20211030) unstable; urgency=low ++ncurses6 (6.3+20211106) unstable; urgency=low + + * latest weekly patch + +- -- Thomas E. Dickey Sat, 30 Oct 2021 04:33:19 -0400 ++ -- Thomas E. Dickey Sat, 06 Nov 2021 04:19:47 -0400 + + ncurses6 (5.9-20131005) unstable; urgency=low + +Index: package/debian-mingw64/changelog +--- ncurses-6.3-20211030+/package/debian-mingw64/changelog 2021-10-30 08:33:19.000000000 +0000 ++++ ncurses-6.3-20211106/package/debian-mingw64/changelog 2021-11-06 08:19:47.000000000 +0000 +@@ -1,8 +1,8 @@ +-ncurses6 (6.3+20211030) unstable; urgency=low ++ncurses6 (6.3+20211106) unstable; urgency=low + + * latest weekly patch + +- -- Thomas E. Dickey Sat, 30 Oct 2021 04:33:19 -0400 ++ -- Thomas E. Dickey Sat, 06 Nov 2021 04:19:47 -0400 + + ncurses6 (5.9-20131005) unstable; urgency=low + +Index: package/debian/changelog +--- ncurses-6.3-20211030+/package/debian/changelog 2021-10-30 08:33:19.000000000 +0000 ++++ ncurses-6.3-20211106/package/debian/changelog 2021-11-06 08:19:47.000000000 +0000 +@@ -1,8 +1,8 @@ +-ncurses6 (6.3+20211030) unstable; urgency=low ++ncurses6 (6.3+20211106) unstable; urgency=low + + * latest weekly patch + +- -- Thomas E. Dickey Sat, 30 Oct 2021 04:33:19 -0400 ++ -- Thomas E. Dickey Sat, 06 Nov 2021 04:19:47 -0400 + + ncurses6 (5.9-20120608) unstable; urgency=low + +Index: package/mingw-ncurses.nsi +Prereq: 1.489 +--- ncurses-6.3-20211030+/package/mingw-ncurses.nsi 2021-10-30 08:33:19.000000000 +0000 ++++ ncurses-6.3-20211106/package/mingw-ncurses.nsi 2021-11-06 08:19:47.000000000 +0000 +@@ -1,4 +1,4 @@ +-; $Id: mingw-ncurses.nsi,v 1.489 2021/10/30 08:33:19 tom Exp $ ++; $Id: mingw-ncurses.nsi,v 1.490 2021/11/06 08:19:47 tom Exp $ + + ; TODO add examples + ; TODO bump ABI to 6 +@@ -10,7 +10,7 @@ + !define VERSION_MAJOR "6" + !define VERSION_MINOR "3" + !define VERSION_YYYY "2021" +-!define VERSION_MMDD "1030" ++!define VERSION_MMDD "1106" + !define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD} + + !define MY_ABI "5" +Index: package/mingw-ncurses.spec +--- ncurses-6.3-20211030+/package/mingw-ncurses.spec 2021-10-30 08:33:19.000000000 +0000 ++++ ncurses-6.3-20211106/package/mingw-ncurses.spec 2021-11-06 08:19:47.000000000 +0000 +@@ -3,7 +3,7 @@ + Summary: shared libraries for terminal handling + Name: mingw32-ncurses6 + Version: 6.3 +-Release: 20211030 ++Release: 20211106 + License: X11 + Group: Development/Libraries + Source: ncurses-%{version}-%{release}.tgz +Index: package/ncurses.spec +--- ncurses-6.3-20211030+/package/ncurses.spec 2021-10-30 08:33:19.000000000 +0000 ++++ ncurses-6.3-20211106/package/ncurses.spec 2021-11-06 08:19:47.000000000 +0000 +@@ -1,7 +1,7 @@ + Summary: shared libraries for terminal handling + Name: ncurses6 + Version: 6.3 +-Release: 20211030 ++Release: 20211106 + License: X11 + Group: Development/Libraries + Source: ncurses-%{version}-%{release}.tgz +Index: package/ncursest.spec +--- ncurses-6.3-20211030+/package/ncursest.spec 2021-10-30 08:33:19.000000000 +0000 ++++ ncurses-6.3-20211106/package/ncursest.spec 2021-11-06 08:19:47.000000000 +0000 +@@ -1,7 +1,7 @@ + Summary: Curses library with POSIX thread support. + Name: ncursest6 + Version: 6.3 +-Release: 20211030 ++Release: 20211106 + License: X11 + Group: Development/Libraries + Source: ncurses-%{version}-%{release}.tgz +Index: panel/p_new.c +Prereq: 1.23 +--- ncurses-6.3-20211030+/panel/p_new.c 2021-06-17 21:20:30.000000000 +0000 ++++ ncurses-6.3-20211106/panel/p_new.c 2021-10-23 15:12:06.000000000 +0000 +@@ -39,7 +39,7 @@ + */ + #include "panel.priv.h" + +-MODULE_ID("$Id: p_new.c,v 1.23 2021/06/17 21:20:30 tom Exp $") ++MODULE_ID("$Id: p_new.c,v 1.24 2021/10/23 15:12:06 tom Exp $") + + #ifdef TRACE + static char *stdscr_id; +@@ -117,7 +117,7 @@ + (void)root_panel(NCURSES_SP_ARG); + assert(_nc_stdscr_pseudo_panel); + +- if (!(win->_flags & _ISPAD) && (pan = AllocPanel("new_panel"))) ++ if ((pan = AllocPanel("new_panel")) != NULL) + { + pan->win = win; + pan->above = (PANEL *)0; -- cgit v1.2.3-60-g2f50