diff --git a/NEWS b/NEWS index 7484d5a5..964e4025 100644 --- a/NEWS +++ b/NEWS @@ -26,7 +26,7 @@ -- sale, use or other dealings in this Software without prior written -- -- authorization. -- ------------------------------------------------------------------------------- --- $Id: NEWS,v 1.4374 2025/11/23 19:13:18 tom Exp $ +-- $Id: NEWS,v 1.4376 2025/11/29 19:07:52 tom Exp $ ------------------------------------------------------------------------------- This is a log of changes that ncurses has gone through since Zeyd started @@ -46,6 +46,9 @@ 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. +20251129 + + in-progress work to merge MinGW/Windows port. + 20251123 + revert change using NCURSES_SBOOL in tic.h which interfered with sign-extension in tigetflag (Debian #1121191, cf: 20251101). diff --git a/VERSION b/VERSION index 7414c365..982c94b3 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -5:0:10 6.5 20251123 +5:0:10 6.5 20251129 diff --git a/dist.mk b/dist.mk index 4987350c..3ae5d3d8 100644 --- a/dist.mk +++ b/dist.mk @@ -26,7 +26,7 @@ # use or other dealings in this Software without prior written # # authorization. # ############################################################################## -# $Id: dist.mk,v 1.1701 2025/11/23 18:59:57 tom Exp $ +# $Id: dist.mk,v 1.1702 2025/11/29 10:26:45 tom Exp $ # Makefile for creating ncurses distributions. # # This only needs to be used directly as a makefile by developers, but @@ -38,7 +38,7 @@ SHELL = /bin/sh # These define the major/minor/patch versions of ncurses. NCURSES_MAJOR = 6 NCURSES_MINOR = 5 -NCURSES_PATCH = 20251123 +NCURSES_PATCH = 20251129 # We don't append the patch to the version, since this only applies to releases VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR) diff --git a/ncurses/curses.priv.h b/ncurses/curses.priv.h index fe0a9811..25b59199 100644 --- a/ncurses/curses.priv.h +++ b/ncurses/curses.priv.h @@ -35,7 +35,7 @@ ****************************************************************************/ /* - * $Id: curses.priv.h,v 1.732 2025/11/16 16:08:54 tom Exp $ + * $Id: curses.priv.h,v 1.733 2025/11/29 16:17:08 tom Exp $ * * curses.priv.h * @@ -90,7 +90,7 @@ extern int errno; /* Some Windows related defines */ #undef _NC_WINDOWS -#if (defined(_WIN32) || defined(_WIN64__) || defined(__MSYS__) || defined(__CYGWIN__)) +#if (defined(_WIN32) || defined(_WIN64__) || defined(__MSYS__)) #define _NC_WINDOWS #else #undef EXP_WIN32_DRIVER diff --git a/ncurses/tinfo/lib_win32con.c b/ncurses/tinfo/lib_win32con.c index 58be45c0..82d72031 100644 --- a/ncurses/tinfo/lib_win32con.c +++ b/ncurses/tinfo/lib_win32con.c @@ -39,7 +39,7 @@ #define TTY int /* FIXME: TTY originalMode */ #include -MODULE_ID("$Id: lib_win32con.c,v 1.43 2025/10/18 19:18:29 tom Exp $") +MODULE_ID("$Id: lib_win32con.c,v 1.44 2025/11/29 21:45:49 tom Exp $") #if defined(_NC_WINDOWS) @@ -225,9 +225,6 @@ _nc_console_fd2handle(int fd) T(("lib_win32con:validateHandle %d maps to unknown HANDLE", fd)); hdl = INVALID_HANDLE_VALUE; } -#if 1 - assert(hdl != INVALID_HANDLE_VALUE); -#endif if (hdl != INVALID_HANDLE_VALUE) { if (hdl != WINCONSOLE.inp && (!WINCONSOLE.isTermInfoConsole && WINCONSOLE.progMode)) { if (hdl == WINCONSOLE.out && hdl != WINCONSOLE.hdl) { diff --git a/ncurses/tinfo/tinfo_driver.c b/ncurses/tinfo/tinfo_driver.c index 663d8b34..00a7ae5c 100644 --- a/ncurses/tinfo/tinfo_driver.c +++ b/ncurses/tinfo/tinfo_driver.c @@ -52,7 +52,7 @@ # endif #endif -MODULE_ID("$Id: tinfo_driver.c,v 1.83 2025/10/18 18:11:02 tom Exp $") +MODULE_ID("$Id: tinfo_driver.c,v 1.84 2025/11/29 23:45:48 tom Exp $") /* * SCO defines TIOCGSIZE and the corresponding struct. Other systems (SunOS, @@ -161,7 +161,8 @@ drv_CanHandle(TERMINAL_CONTROL_BLOCK * TCB, const char *tname, int *errret) SCREEN *sp; START_TRACE(); - T((T_CALLED("tinfo::drv_CanHandle(%p)"), (void *) TCB)); + T((T_CALLED("tinfo::drv_CanHandle(%p,%s,%p)"), + (void *) TCB, NonNull(tname), (void *) errret)); assert(TCB != NULL && tname != NULL); termp = (TERMINAL *) TCB; diff --git a/ncurses/tty/tty_update.c b/ncurses/tty/tty_update.c index 37ff1948..10d37996 100644 --- a/ncurses/tty/tty_update.c +++ b/ncurses/tty/tty_update.c @@ -85,7 +85,13 @@ #include -MODULE_ID("$Id: tty_update.c,v 1.321 2025/11/15 15:59:13 tom Exp $") +#if USE_WIDEC_SUPPORT +#if HAVE_WCTYPE_H +#include +#endif +#endif + +MODULE_ID("$Id: tty_update.c,v 1.322 2025/11/29 19:03:46 tom Exp $") /* * This define controls the line-breakout optimization. Every once in a diff --git a/ncurses/win32con/win32_driver.c b/ncurses/win32con/win32_driver.c index 3fed6770..3f4d9d70 100644 --- a/ncurses/win32con/win32_driver.c +++ b/ncurses/win32con/win32_driver.c @@ -43,7 +43,7 @@ #define CUR TerminalType(my_term). -MODULE_ID("$Id: win32_driver.c,v 1.14 2025/09/27 20:58:55 tom Exp $") +MODULE_ID("$Id: win32_driver.c,v 1.15 2025/11/29 23:45:48 tom Exp $") #define WINMAGIC NCDRV_MAGIC(NCDRV_WINCONSOLE) #define EXP_OPTIMIZE 0 @@ -518,9 +518,10 @@ wcon_CanHandle(TERMINAL_CONTROL_BLOCK * TCB, { bool code = FALSE; - T((T_CALLED("win32con::wcon_CanHandle(%p)"), TCB)); + T((T_CALLED("win32con::wcon_CanHandle(%p,%s,%p)"), + (void *) TCB, NonNull(tname), (void *) errret)); - assert((TCB != NULL) && (tname != NULL)); + assert(TCB != NULL); TCB->magic = WINMAGIC; diff --git a/ncurses/win32con/win_driver.c b/ncurses/win32con/win_driver.c index f2c522a7..f3ae6aab 100644 --- a/ncurses/win32con/win_driver.c +++ b/ncurses/win32con/win_driver.c @@ -42,7 +42,7 @@ #define CUR TerminalType(my_term). -MODULE_ID("$Id: win_driver.c,v 1.114 2025/10/18 19:18:39 tom Exp $") +MODULE_ID("$Id: win_driver.c,v 1.115 2025/11/29 23:45:48 tom Exp $") #define WINMAGIC NCDRV_MAGIC(NCDRV_WINCONSOLE) #define EXP_OPTIMIZE 0 @@ -518,9 +518,10 @@ wcon_CanHandle(TERMINAL_CONTROL_BLOCK * TCB, { bool code = FALSE; - T((T_CALLED("win32con::wcon_CanHandle(%p)"), TCB)); + T((T_CALLED("win32con::wcon_CanHandle(%p,%s,%p)"), + (void *) TCB, NonNull(tname), (void *) errret)); - assert((TCB != NULL) && (tname != NULL)); + assert(TCB != NULL); TCB->magic = WINMAGIC; diff --git a/package/debian-mingw/changelog b/package/debian-mingw/changelog index 458e12b9..bdf661d3 100644 --- a/package/debian-mingw/changelog +++ b/package/debian-mingw/changelog @@ -1,8 +1,8 @@ -ncurses6td (6.5+20251123) unstable; urgency=low +ncurses6td (6.5+20251129) unstable; urgency=low * latest weekly patch - -- Thomas E. Dickey Sun, 23 Nov 2025 13:59:57 -0500 + -- Thomas E. Dickey Sat, 29 Nov 2025 05:26:45 -0500 ncurses6 (5.9+20131005) unstable; urgency=low diff --git a/package/debian-mingw64/changelog b/package/debian-mingw64/changelog index 458e12b9..bdf661d3 100644 --- a/package/debian-mingw64/changelog +++ b/package/debian-mingw64/changelog @@ -1,8 +1,8 @@ -ncurses6td (6.5+20251123) unstable; urgency=low +ncurses6td (6.5+20251129) unstable; urgency=low * latest weekly patch - -- Thomas E. Dickey Sun, 23 Nov 2025 13:59:57 -0500 + -- Thomas E. Dickey Sat, 29 Nov 2025 05:26:45 -0500 ncurses6 (5.9+20131005) unstable; urgency=low diff --git a/package/debian/changelog b/package/debian/changelog index 402864b4..8fe642c3 100644 --- a/package/debian/changelog +++ b/package/debian/changelog @@ -1,8 +1,8 @@ -ncurses6td (6.5+20251123) unstable; urgency=low +ncurses6td (6.5+20251129) unstable; urgency=low * latest weekly patch - -- Thomas E. Dickey Sun, 23 Nov 2025 13:59:57 -0500 + -- Thomas E. Dickey Sat, 29 Nov 2025 05:26:45 -0500 ncurses6 (5.9+20120608) unstable; urgency=low diff --git a/package/mingw-ncurses.nsi b/package/mingw-ncurses.nsi index a8ef670d..c09d7d17 100644 --- a/package/mingw-ncurses.nsi +++ b/package/mingw-ncurses.nsi @@ -1,4 +1,4 @@ -; $Id: mingw-ncurses.nsi,v 1.732 2025/11/23 18:59:57 tom Exp $ +; $Id: mingw-ncurses.nsi,v 1.733 2025/11/29 10:26:45 tom Exp $ ; TODO add examples ; TODO bump ABI to 6 @@ -10,7 +10,7 @@ !define VERSION_MAJOR "6" !define VERSION_MINOR "5" !define VERSION_YYYY "2025" -!define VERSION_MMDD "1123" +!define VERSION_MMDD "1129" !define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD} !define MY_ABI "5" diff --git a/package/mingw-ncurses.spec b/package/mingw-ncurses.spec index 71214986..a880e390 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.5 -Release: 20251123 +Release: 20251129 License: X11 License Distribution Modification Variant Group: Development/Libraries URL: https://invisible-island.net/ncurses/ @@ -144,8 +144,8 @@ popd %changelog -* Sun Nov 23 2025 Thomas E. Dickey -- testing ncurses 6.5-20251123 +* Sat Nov 29 2025 Thomas E. Dickey +- testing ncurses 6.5-20251129 * Sat Feb 25 2023 Thomas Dickey - amend URLs per rpmlint diff --git a/package/ncurses.spec b/package/ncurses.spec index 2c92259a..4171b1bd 100644 --- a/package/ncurses.spec +++ b/package/ncurses.spec @@ -1,7 +1,7 @@ Summary: shared libraries for terminal handling Name: ncurses6 Version: 6.5 -Release: 20251123 +Release: 20251129 License: X11 License Distribution Modification Variant Group: Development/Libraries URL: https://invisible-island.net/ncurses/ @@ -134,8 +134,8 @@ rm -f test/ncurses %changelog -* Sun Nov 23 2025 Thomas E. Dickey -- testing ncurses 6.5-20251123 +* Sat Nov 29 2025 Thomas E. Dickey +- testing ncurses 6.5-20251129 * Sat Feb 25 2023 Thomas Dickey - amend URLs per rpmlint diff --git a/package/ncursest.spec b/package/ncursest.spec index 1a864f78..b6cb2904 100644 --- a/package/ncursest.spec +++ b/package/ncursest.spec @@ -1,7 +1,7 @@ Summary: Curses library with POSIX thread support. Name: ncursest6 Version: 6.5 -Release: 20251123 +Release: 20251129 License: X11 License Distribution Modification Variant Group: Development/Libraries Source: ncurses-%{version}-%{release}.tgz @@ -142,8 +142,8 @@ exit 0 %changelog -* Sun Nov 23 2025 Thomas E. Dickey -- testing ncurses 6.5-20251123 +* Sat Nov 29 2025 Thomas E. Dickey +- testing ncurses 6.5-20251129 * Tue Dec 24 2019 Thomas Dickey - drop custom CC_NORMAL warning flags because setting CFLAGS interferes with diff --git a/progs/clear_cmd.c b/progs/clear_cmd.c index b174d96e..6ba67f5b 100644 --- a/progs/clear_cmd.c +++ b/progs/clear_cmd.c @@ -38,7 +38,7 @@ #define USE_LIBTINFO #include -MODULE_ID("$Id: clear_cmd.c,v 1.6 2025/01/18 14:51:58 tom Exp $") +MODULE_ID("$Id: clear_cmd.c,v 1.7 2025/11/29 19:34:33 tom Exp $") static int putch(int c) @@ -53,7 +53,7 @@ clear_cmd(bool legacy) if (!legacy) { /* Clear the scrollback buffer if possible. */ char *E3 = tigetstr(UserCap(E3)); - if (E3) + if (VALID_STRING(E3)) (void) tputs(E3, lines > 0 ? lines : 1, putch); } return retval;