snapshot of project "ncurses", label v6_1_20190623

This commit is contained in:
Thomas E. Dickey 2019-06-23 21:27:11 +00:00
parent fade641317
commit c0e606edf1
41 changed files with 1811 additions and 1055 deletions

13
NEWS
View File

@ -25,7 +25,7 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
-- $Id: NEWS,v 1.3332 2019/06/15 23:39:53 tom Exp $
-- $Id: NEWS,v 1.3337 2019/06/23 21:18:23 tom Exp $
-------------------------------------------------------------------------------
This is a log of changes that ncurses has gone through since Zeyd started
@ -45,6 +45,17 @@ 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.
20190623
+ improve the tabs.1 manual page to distinguish the PWB/Unix and 7th
Edition versions of the tabs utility.
+ add configure check for getenv() to work around implementation shown
in Emscripten #6766, use that to optionally suppress START_TRACE
macro, whose call to getenv() may not work properly (report by Ilya
Ig Petrov).
+ modify initialization functions to avoid relying upon persistent
data for the result from getenv().
+ update config.guess, config.sub
20190615
+ expand the portability section of the man/tabs.1 manual page.
+ regenerate HTML manpages.

View File

@ -1 +1 @@
5:0:10 6.1 20190615
5:0:10 6.1 20190623

224
aclocal.m4 vendored
View File

@ -28,7 +28,7 @@ dnl***************************************************************************
dnl
dnl Author: Thomas E. Dickey 1995-on
dnl
dnl $Id: aclocal.m4,v 1.862 2019/03/30 21:53:01 tom Exp $
dnl $Id: aclocal.m4,v 1.869 2019/06/23 19:53:31 tom Exp $
dnl Macros used in NCURSES auto-configuration script.
dnl
dnl These macros are maintained separately from NCURSES. The copyright on
@ -925,6 +925,35 @@ if test ".$system_name" != ".$cf_cv_system_name" ; then
fi
])dnl
dnl ---------------------------------------------------------------------------
dnl CF_CHECK_ENVIRON version: 3 updated: 2010/05/26 16:44:57
dnl ----------------
dnl Check for data that is usually declared in <unistd.h>, e.g., the 'environ'
dnl variable. Define a DECL_xxx symbol if we must declare it ourselves.
dnl
dnl $1 = the name to check
dnl $2 = the assumed type
AC_DEFUN([CF_CHECK_ENVIRON],
[
AC_CACHE_CHECK(if external $1 is declared, cf_cv_dcl_$1,[
AC_TRY_COMPILE([
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#endif
#include <unistd.h> ],
ifelse([$2],,int,[$2]) x = (ifelse([$2],,int,[$2])) $1,
[cf_cv_dcl_$1=yes],
[cf_cv_dcl_$1=no])
])
if test "$cf_cv_dcl_$1" = no ; then
CF_UPPER(cf_result,decl_$1)
AC_DEFINE_UNQUOTED($cf_result)
fi
# It's possible (for near-UNIX clones) that the data doesn't exist
CF_CHECK_EXTERN_DATA($1,ifelse([$2],,int,[$2]))
])dnl
dnl ---------------------------------------------------------------------------
dnl CF_CHECK_ERRNO version: 12 updated: 2015/04/18 08:56:57
dnl --------------
dnl Check for data that is usually declared in <stdio.h> or <errno.h>, e.g.,
@ -980,6 +1009,132 @@ if test "$cf_cv_have_$1" = yes ; then
AC_DEFINE_UNQUOTED($cf_result)
fi
])dnl
dnl ---------------------------------------------------------------------------
dnl CF_CHECK_GETENV version: 1 updated: 2019/06/23 15:28:15
dnl ---------------
dnl Check if repeated getenv calls return the same pointer, e.g., it does not
dnl discard the previous pointer when returning a new one.
AC_DEFUN([CF_CHECK_GETENV],
[
AC_REQUIRE([CF_CHECK_ENVIRON])
AC_CHECK_FUNC( getenv, ,, AC_MSG_ERROR(getenv not found) )
AC_CHECK_FUNCS( putenv setenv strdup )
AC_CACHE_CHECK(if getenv returns consistent values,cf_cv_consistent_getenv,[
AC_TRY_RUN([
#include <stdlib.h>
#include <unistd.h>
#include <stdio.h>
#include <string.h>
#include <sys/types.h>
#if defined(HAVE_ENVIRON) && defined(DECL_ENVIRON) && !defined(environ)
extern char **environ; /* POSIX, but some systems are not... */
#endif
#if defined(HAVE_STRDUP)
#define str_alloc(s) strdup(s)
#else
#define str_alloc(s) strcpy(malloc(strlen(s) + 1, s))
#endif
static void set_value(const char *name, const char *value)
{
#if defined(HAVE_SETENV)
setenv(name, value, 1);
#elif defined(HAVE_PUTENV)
char buffer[1024];
sprintf(buffer, "%s=%s", name, value);
putenv(str_alloc(buffer));
#else
#error neither putenv/setenv found
#endif
}
int main(void)
{
int pass;
size_t numenv, limit, j;
char **mynames;
char **myvalues;
char **mypointer;
char *equals;
for (numenv = 0; environ[numenv]; ++numenv) ;
limit = numenv + 10;
mynames = (char **) calloc(limit + 1, sizeof(char *));
myvalues = (char **) calloc(limit + 1, sizeof(char *));
mypointer = (char **) calloc(limit + 1, sizeof(char *));
#if defined(HAVE_ENVIRON)
for (j = 0; environ[j]; ++j) {
mynames[j] = str_alloc(environ[j]);
equals = strchr(mynames[j], '=');
if (equals != 0) {
*equals++ = '\0';
myvalues[j] = str_alloc(equals);
} else {
myvalues[j] = str_alloc("");
}
}
#endif
for (j = numenv; j < limit; ++j) {
char name[80];
char value[80];
size_t found;
size_t k = 0;
do {
size_t jk;
found = 0;
sprintf(name, "TERM%lu", (unsigned long) k);
for (jk = 0; jk < j; ++jk) {
if (!strcmp(name, mynames[jk])) {
found = 1;
++k;
break;
}
}
} while (found);
sprintf(value, "%lu:%p", (unsigned long) k, &mynames[j]);
set_value(name, value);
mynames[j] = str_alloc(name);
myvalues[j] = str_alloc(value);
}
for (pass = 0; pass < 3; ++pass) {
for (j = 0; j < limit; ++j) {
char *value = getenv(mynames[j]);
if (pass) {
if (value == 0) {
fprintf(stderr, "getenv returned null for %s\n", mynames[j]);
${cf_cv_main_return:-return}(1);
} else if (value != mypointer[j]) {
fprintf(stderr, "getenv returned different pointer for %s\n", mynames[j]);
${cf_cv_main_return:-return}(1);
} else if (strcmp(value, myvalues[j])) {
fprintf(stderr, "getenv returned different value for %s\n", mynames[j]);
${cf_cv_main_return:-return}(1);
}
} else {
size_t k;
mypointer[j] = value;
for (k = 0; k < j; ++k) {
if (mypointer[j] == mypointer[k]) {
fprintf(stderr, "getenv returned same pointer for %s and %s\n", mynames[j], mynames[k]);
${cf_cv_main_return:-return}(1);
}
}
}
}
}
${cf_cv_main_return:-return}(0);
}
],
[cf_cv_consistent_getenv=yes],
[cf_cv_consistent_getenv=no],
[cf_cv_consistent_getenv=unknown])
])
if test "x$cf_cv_consistent_getenv" = xno
then
AC_DEFINE(HAVE_CONSISTENT_GETENV,1,[Define to 1 if getenv repeatably returns the same value for a given name])
fi
])dnl
dnl ---------------------------------------------------------------------------
dnl CF_CHECK_GPM_WGETCH version: 3 updated: 2017/01/21 11:06:25
@ -1253,6 +1408,60 @@ cf_save_CFLAGS="$cf_save_CFLAGS -Qunused-arguments"
fi
])
dnl ---------------------------------------------------------------------------
dnl CF_CONST_X_STRING version: 1 updated: 2019/04/08 17:50:29
dnl -----------------
dnl The X11R4-X11R6 Xt specification uses an ambiguous String type for most
dnl character-strings.
dnl
dnl It is ambiguous because the specification accommodated the pre-ANSI
dnl compilers bundled by more than one vendor in lieu of providing a standard C
dnl compiler other than by costly add-ons. Because of this, the specification
dnl did not take into account the use of const for telling the compiler that
dnl string literals would be in readonly memory.
dnl
dnl As a workaround, one could (starting with X11R5) define XTSTRINGDEFINES, to
dnl let the compiler decide how to represent Xt's strings which were #define'd.
dnl That does not solve the problem of using the block of Xt's strings which
dnl are compiled into the library (and is less efficient than one might want).
dnl
dnl Xt specification 7 introduces the _CONST_X_STRING symbol which is used both
dnl when compiling the library and compiling using the library, to tell the
dnl compiler that String is const.
AC_DEFUN([CF_CONST_X_STRING],
[
AC_TRY_COMPILE(
[
#include <stdlib.h>
#include <X11/Intrinsic.h>
],
[String foo = malloc(1)],[
AC_CACHE_CHECK(for X11/Xt const-feature,cf_cv_const_x_string,[
AC_TRY_COMPILE(
[
#define _CONST_X_STRING /* X11R7.8 (perhaps) */
#undef XTSTRINGDEFINES /* X11R5 and later */
#include <stdlib.h>
#include <X11/Intrinsic.h>
],[String foo = malloc(1); *foo = 0],[
cf_cv_const_x_string=no
],[
cf_cv_const_x_string=yes
])
])
case $cf_cv_const_x_string in
(no)
CF_APPEND_TEXT(CPPFLAGS,-DXTSTRINGDEFINES)
;;
(*)
CF_APPEND_TEXT(CPPFLAGS,-D_CONST_X_STRING)
;;
esac
])
])dnl
dnl ---------------------------------------------------------------------------
dnl CF_CPP_PARAM_INIT version: 7 updated: 2017/01/21 11:06:25
dnl -----------------
dnl Check if the C++ compiler accepts duplicate parameter initialization. This
@ -2343,7 +2552,7 @@ if test "$GCC" = yes ; then
fi
])dnl
dnl ---------------------------------------------------------------------------
dnl CF_GCC_WARNINGS version: 33 updated: 2018/06/20 20:23:13
dnl CF_GCC_WARNINGS version: 35 updated: 2019/06/16 09:45:01
dnl ---------------
dnl Check if the compiler supports useful warning options. There's a few that
dnl we don't use, simply because they're too noisy:
@ -2367,12 +2576,11 @@ AC_DEFUN([CF_GCC_WARNINGS],
AC_REQUIRE([CF_GCC_VERSION])
CF_INTEL_COMPILER(GCC,INTEL_COMPILER,CFLAGS)
CF_CLANG_COMPILER(GCC,CLANG_COMPILER,CFLAGS)
if test "x$have_x" = xyes; then CF_CONST_X_STRING fi
cat > conftest.$ac_ext <<EOF
#line __oline__ "${as_me:-configure}"
int main(int argc, char *argv[[]]) { return (argv[[argc-1]] == 0) ; }
EOF
if test "$INTEL_COMPILER" = yes
then
# The "-wdXXX" options suppress warnings:
@ -2407,7 +2615,6 @@ then
fi
done
CFLAGS="$cf_save_CFLAGS"
elif test "$GCC" = yes
then
AC_CHECKING([for $CC warning options])
@ -2436,9 +2643,6 @@ then
if AC_TRY_EVAL(ac_compile); then
test -n "$verbose" && AC_MSG_RESULT(... -$cf_opt)
case $cf_opt in
(Wcast-qual)
CF_APPEND_TEXT(CPPFLAGS,-DXTSTRINGDEFINES)
;;
(Winline)
case $GCC_VERSION in
([[34]].*)
@ -6564,12 +6768,12 @@ define([CF_SHARED_SONAME],
fi
])
dnl ---------------------------------------------------------------------------
dnl CF_SIGWINCH version: 1 updated: 2006/04/02 16:41:09
dnl CF_SIGWINCH version: 2 updated: 2019/03/23 19:54:44
dnl -----------
dnl Use this macro after CF_XOPEN_SOURCE, but do not require it (not all
dnl programs need this test).
dnl
dnl This is really a MacOS X 10.4.3 workaround. Defining _POSIX_C_SOURCE
dnl This is really a Mac OS X 10.4.3 workaround. Defining _POSIX_C_SOURCE
dnl forces SIGWINCH to be undefined (breaks xterm, ncurses). Oddly, the struct
dnl winsize declaration is left alone - we may revisit this if Apple choose to
dnl break that part of the interface as well.

89
config.guess vendored
View File

@ -2,7 +2,7 @@
# Attempt to guess a canonical system name.
# Copyright 1992-2019 Free Software Foundation, Inc.
timestamp='2019-03-04'
timestamp='2019-06-10'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@ -262,6 +262,9 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
*:SolidBSD:*:*)
echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE"
exit ;;
*:OS108:*:*)
echo "$UNAME_MACHINE"-unknown-os108_"$UNAME_RELEASE"
exit ;;
macppc:MirBSD:*:*)
echo powerpc-unknown-mirbsd"$UNAME_RELEASE"
exit ;;
@ -1325,38 +1328,39 @@ EOF
echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE"
exit ;;
*:Darwin:*:*)
UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
set_cc_for_build
if test "$UNAME_PROCESSOR" = unknown ; then
UNAME_PROCESSOR=powerpc
UNAME_PROCESSOR=`uname -p`
case $UNAME_PROCESSOR in
unknown) UNAME_PROCESSOR=powerpc ;;
esac
if command -v xcode-select > /dev/null 2> /dev/null && \
! xcode-select --print-path > /dev/null 2> /dev/null ; then
# Avoid executing cc if there is no toolchain installed as
# cc will be a stub that puts up a graphical alert
# prompting the user to install developer tools.
CC_FOR_BUILD=no_compiler_found
else
set_cc_for_build
fi
if test "`echo "$UNAME_RELEASE" | sed -e 's/\..*//'`" -le 10 ; then
if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
(CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
grep IS_64BIT_ARCH >/dev/null
then
case $UNAME_PROCESSOR in
i386) UNAME_PROCESSOR=x86_64 ;;
powerpc) UNAME_PROCESSOR=powerpc64 ;;
esac
fi
# On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc
if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \
(CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
grep IS_PPC >/dev/null
then
UNAME_PROCESSOR=powerpc
fi
if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
(CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
grep IS_64BIT_ARCH >/dev/null
then
case $UNAME_PROCESSOR in
i386) UNAME_PROCESSOR=x86_64 ;;
powerpc) UNAME_PROCESSOR=powerpc64 ;;
esac
fi
# On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc
if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \
(CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
grep IS_PPC >/dev/null
then
UNAME_PROCESSOR=powerpc
fi
elif test "$UNAME_PROCESSOR" = i386 ; then
# Avoid executing cc on OS X 10.9, as it ships with a stub
# that puts up a graphical alert prompting to install
# developer tools. Any system running Mac OS X 10.7 or
# later (Darwin 11 and later) is required to have a 64-bit
# processor. This is not true of the ARM version of Darwin
# that Apple uses in portable devices.
UNAME_PROCESSOR=x86_64
# uname -m returns i386 or x86_64
UNAME_PROCESSOR=$UNAME_MACHINE
fi
echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE"
exit ;;
@ -1468,6 +1472,14 @@ cat > "$dummy.c" <<EOF
#include <sys/types.h>
#include <sys/utsname.h>
#endif
#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__)
#if defined (vax) || defined (__vax) || defined (__vax__) || defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__)
#include <signal.h>
#if defined(_SIZE_T_) || defined(SIGLOST)
#include <sys/utsname.h>
#endif
#endif
#endif
main ()
{
#if defined (sony)
@ -1554,19 +1566,24 @@ main ()
#else
printf ("vax-dec-bsd\n"); exit (0);
#endif
#else
#if defined(_SIZE_T_) || defined(SIGLOST)
struct utsname un;
uname (&un);
printf ("vax-dec-ultrix%s\n", un.release); exit (0);
#else
printf ("vax-dec-ultrix\n"); exit (0);
#endif
#endif
#endif
#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__)
#if defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__)
#include <signal.h>
#if defined(_SIZE_T_) /* >= ULTRIX4 */
printf ("mips-dec-ultrix4\n"); exit (0);
#if defined(_SIZE_T_) || defined(SIGLOST)
struct utsname *un;
uname (&un);
printf ("mips-dec-ultrix%s\n", un.release); exit (0);
#else
#if defined(ULTRIX3) || defined(ultrix3) || defined(SIGLOST)
printf ("mips-dec-ultrix3\n"); exit (0);
#endif
printf ("mips-dec-ultrix\n"); exit (0);
#endif
#endif
#endif

9
config.sub vendored
View File

@ -2,7 +2,7 @@
# Configuration validation subroutine script.
# Copyright 1992-2019 Free Software Foundation, Inc.
timestamp='2019-01-05'
timestamp='2019-05-23'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@ -1172,7 +1172,7 @@ case $cpu-$vendor in
| asmjs \
| ba \
| be32 | be64 \
| bfin | bs2000 \
| bfin | bpf | bs2000 \
| c[123]* | c30 | [cjt]90 | c4x \
| c8051 | clipper | craynv | csky | cydra \
| d10v | d30v | dlx | dsp16xx \
@ -1247,7 +1247,8 @@ case $cpu-$vendor in
| v70 | v850 | v850e | v850e1 | v850es | v850e2 | v850e2v3 \
| vax \
| visium \
| w65 | wasm32 \
| w65 \
| wasm32 | wasm64 \
| we32k \
| x86 | x86_64 | xc16x | xgate | xps100 \
| xstormy16 | xtensa* \
@ -1367,7 +1368,7 @@ case $os in
| powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \
| skyos* | haiku* | rdos* | toppers* | drops* | es* \
| onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
| midnightbsd* | amdhsa* | unleashed* | emscripten*)
| midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
qnx*)

2322
configure vendored

File diff suppressed because it is too large Load Diff

View File

@ -28,14 +28,14 @@ dnl***************************************************************************
dnl
dnl Author: Thomas E. Dickey 1995-on
dnl
dnl $Id: configure.in,v 1.679 2019/03/30 21:44:53 tom Exp $
dnl $Id: configure.in,v 1.682 2019/06/23 21:26:48 tom Exp $
dnl Process this file with autoconf to produce a configure script.
dnl
dnl See https://invisible-island.net/autoconf/ for additional information.
dnl
dnl ---------------------------------------------------------------------------
AC_PREREQ(2.52.20170501)
AC_REVISION($Revision: 1.679 $)
AC_REVISION($Revision: 1.682 $)
AC_INIT(ncurses/base/lib_initscr.c)
AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin)
@ -1643,6 +1643,14 @@ wctype.h \
CF_GETOPT_HEADER
CF_CHECK_ENVIRON(environ)
CF_CHECK_GETENV
if test "x$cf_cv_consistent_getenv" = xno && \
test "x$cf_with_trace" = xyes
then
AC_MSG_WARN(The NCURSES_TRACE environment variable is not supported with this configuration)
fi
# check for ISC (this may also define _POSIX_SOURCE)
# Note: even non-Posix ISC needs <sys/bsdtypes.h> to declare fd_set
if test "x$ISC" = xyes ; then

View File

@ -25,7 +25,7 @@
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
# $Id: dist.mk,v 1.1288 2019/06/15 12:46:35 tom Exp $
# $Id: dist.mk,v 1.1290 2019/06/23 15:31:40 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 = 20190615
NCURSES_PATCH = 20190623
# We don't append the patch to the version, since this only applies to releases
VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)

View File

@ -125,7 +125,7 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190615).
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190623).

View File

@ -190,7 +190,7 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<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>
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190615).
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190623).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>

View File

@ -148,7 +148,7 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190615).
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190623).

View File

@ -246,7 +246,7 @@
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names begin "form_" for detailed
descriptions of the entry points.
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190615).
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190623).

View File

@ -481,7 +481,7 @@
https://invisible-island.net/ncurses/tctest.html
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190615).
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190623).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>

View File

@ -85,7 +85,7 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<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>
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190615).
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190623).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>

View File

@ -221,7 +221,7 @@
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names begin "menu_" for detailed
descriptions of the entry points.
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190615).
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190623).

View File

@ -59,7 +59,7 @@
method of updating character screens with reasonable optimization.
This implementation is "new curses" (ncurses) and is the approved
replacement for 4.4BSD classic curses, which has been discontinued.
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190615).
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190623).
The <STRONG>ncurses</STRONG> library emulates the curses library of System V Release 4
UNIX, and XPG4 (X/Open Portability Guide) curses (also known as XSI

View File

@ -112,7 +112,7 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190615).
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190623).

View File

@ -204,7 +204,7 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>,
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190615).
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190623).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>

View File

@ -26,7 +26,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
* @Id: tabs.1,v 1.25 2019/06/15 23:08:12 tom Exp @
* @Id: tabs.1,v 1.26 2019/06/23 21:01:12 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
@ -167,24 +167,28 @@
The <STRONG>-d</STRONG> (debug) and <STRONG>-n</STRONG> (no-op) options are extensions not provided by
other implementations.
A <STRONG>tabs</STRONG> utility appeared in PWB/Unix 1.0 (1977), and thereafter in 3BSD
(1979). It supported a single "-n" option (to cause the first tab stop
A <STRONG>tabs</STRONG> utility appeared in PWB/Unix 1.0 (1977). There was a reduced
version of the <STRONG>tabs</STRONG> utility in Unix 7th edition and in 3BSD (1979).
The latter supported a single "-n" option (to cause the first tab stop
to be set on the left margin). That option is not documented by POSIX.
Initially, <STRONG>tabs</STRONG> used built-in tables rather than the terminal database,
to support a half-dozen terminal types. It also had built-in logic to
support the left-margin, as well as a feature for copying the tab set-
tings from a file.
Later versions of Unix, e.g., SVr4, added support for the terminal
database, but kept the tables, as a fallback. In an earlier develop-
ment effort, the tab-stop initialization provided by <STRONG>tset</STRONG> (1982) and
The PWB/Unix <STRONG>tabs</STRONG> utility, which was included in System III (1980),
used built-in tables rather than the terminal database, to support a
half-dozen terminal types. It also had built-in logic to support the
left-margin, as well as a feature for copying the tab settings from a
file.
Later versions of Unix, e.g., SVr4, added support for the terminal
database, but kept the tables, as a fallback. In an earlier develop-
ment effort, the tab-stop initialization provided by <STRONG>tset</STRONG> (1982) and
incorporated into <STRONG>tput</STRONG> uses the terminal database,
POSIX documents no limits on the number of tab stops. Documentation
POSIX documents no limits on the number of tab stops. Documentation
for other implementations states that there is a limit on the number of
tab stops. While some terminals may not accept an arbitrary number of
tab stops, this implementation will attempt to set tab stops up to the
right margin of the screen, if the given list happens to be that long.
tab stops (e.g., 20 in PWB/Unix's <STRONG>tabs</STRONG> utility). While some terminals
may not accept an arbitrary number of tab stops, this implementation
will attempt to set tab stops up to the right margin of the screen, if
the given list happens to be that long.
The <EM>Rationale</EM> section of the POSIX documentation goes into some detail
about the ways the committee considered redesigning the <STRONG>tabs</STRONG> and <STRONG>tput</STRONG>
@ -201,7 +205,7 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<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>.
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190615).
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190623).

View File

@ -74,7 +74,7 @@
<EM>Terminfo</EM> describes terminals by giving a set of capabilities which they
have, by specifying how to perform screen operations, and by specifying
padding requirements and initialization sequences. This describes
<STRONG>ncurses</STRONG> version 6.1 (patch 20190615).
<STRONG>ncurses</STRONG> version 6.1 (patch 20190623).
</PRE><H3><a name="h3-Terminfo-Entry-Syntax">Terminfo Entry Syntax</a></H3><PRE>

View File

@ -365,7 +365,7 @@
<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>,
<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>.
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190615).
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190623).
</PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>

View File

@ -113,7 +113,7 @@
<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>
<STRONG><A HREF="terminfo.5.html">minfo(5)</A></STRONG>.
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190615).
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190623).

View File

@ -522,7 +522,7 @@
</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<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>.
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190615).
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190623).

View File

@ -389,7 +389,7 @@
<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>,
<STRONG>ttys(5)</STRONG>, <STRONG>environ(7)</STRONG>
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190615).
This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20190623).

View File

@ -1,5 +1,5 @@
/****************************************************************************
* Copyright (c) 2008-2017,2018 Free Software Foundation, Inc. *
* Copyright (c) 2008-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 *
@ -30,7 +30,7 @@
* Author: Thomas Dickey, 2008-on *
****************************************************************************/
/* $Id: nc_mingw.h,v 1.5 2018/06/24 00:06:37 tom Exp $ */
/* $Id: nc_mingw.h,v 1.6 2019/06/23 19:55:08 tom Exp $ */
#ifndef NC_MINGW_H
#define NC_MINGW_H 1
@ -63,7 +63,7 @@ extern int _nc_gettimeofday(struct timeval *, void *);
#define getlogin() "username"
#undef wcwidth
#define wcwidth(ucs) _nc_wcwidth(ucs)
#define wcwidth(ucs) _nc_wcwidth((wchar_t)(ucs))
extern int _nc_wcwidth(wchar_t);
#endif /* _WIN32 */

View File

@ -1,4 +1,4 @@
# $Id: ncurses_defs,v 1.90 2019/04/13 22:52:57 tom Exp $
# $Id: ncurses_defs,v 1.91 2019/06/23 15:19:43 tom Exp $
##############################################################################
# Copyright (c) 2000-2018,2019 Free Software Foundation, Inc. #
# #
@ -52,6 +52,7 @@ HAVE_BUILTIN_H
HAVE_CHGAT 1
HAVE_COLOR_CONTENT 1
HAVE_COLOR_SET 1
HAVE_CONSISTENT_GETENV
HAVE_COPYWIN 1
HAVE_CURSCR 1
HAVE_CURSES_DATA_TABSIZE 1

View File

@ -25,7 +25,7 @@
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
# $Id: man_db.renames,v 1.53 2019/01/21 09:25:24 tom Exp $
# $Id: man_db.renames,v 1.54 2019/06/23 19:12:27 tom Exp $
# Manual-page renamings for the man_db program
#
# Files:
@ -171,6 +171,7 @@ user_caps.5 user_caps.5
wresize.3x wresize.3ncurses
#
# Other:
tabs.1m tabs.1
tack.1m tack.1
#
getty.1 getty.8

View File

@ -26,7 +26,7 @@
.\" authorization. *
.\"***************************************************************************
.\"
.\" $Id: tabs.1,v 1.25 2019/06/15 23:08:12 tom Exp $
.\" $Id: tabs.1,v 1.26 2019/06/23 21:01:12 tom Exp $
.TH @TABS@ 1 ""
.ds n 5
.ie \n(.g .ds `` \(lq
@ -185,12 +185,15 @@ unlike \fB@TPUT@(1)\fP.
The \fB\-d\fP (debug) and \fB\-n\fP (no-op) options are extensions not provided
by other implementations.
.PP
A \fBtabs\fP utility appeared in PWB/Unix 1.0 (1977),
and thereafter in 3BSD (1979).
It supported a single \*(``\-n\*('' option
A \fBtabs\fP utility appeared in PWB/Unix 1.0 (1977).
There was a reduced version of the \fBtabs\fP utility
in Unix 7th edition and in 3BSD (1979).
The latter supported a single \*(``\-n\*('' option
(to cause the first tab stop to be set on the left margin).
That option is not documented by POSIX.
Initially, \fBtabs\fP used built-in tables rather than the terminal database,
.PP
The PWB/Unix \fBtabs\fP utility, which was included in System III (1980),
used built-in tables rather than the terminal database,
to support a half-dozen terminal types.
It also had built-in logic to support the left-margin,
as well as a feature for copying the tab settings from a file.
@ -204,7 +207,8 @@ and incorporated into \fBtput\fP uses the terminal database,
.PP
POSIX documents no limits on the number of tab stops.
Documentation for other implementations states that there is a limit on the
number of tab stops.
number of tab stops
(e.g., 20 in PWB/Unix's \fBtabs\fP utility).
While some terminals may not accept an arbitrary number
of tab stops, this implementation will attempt to set tab stops up to the
right margin of the screen, if the given list happens to be that long.

View File

@ -1,5 +1,5 @@
/****************************************************************************
* Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
* Copyright (c) 1998-2017,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 *
@ -29,7 +29,7 @@
/****************************************************************************
* Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995 *
* and: Eric S. Raymond <esr@snark.thyrsus.com> *
* and: Thomas E. Dickey 1996-2003 *
* and: Thomas E. Dickey 1996-on *
****************************************************************************/
/*
@ -45,7 +45,7 @@
#include <sys/termio.h> /* needed for ISC */
#endif
MODULE_ID("$Id: lib_initscr.c,v 1.43 2017/06/17 18:42:45 tom Exp $")
MODULE_ID("$Id: lib_initscr.c,v 1.44 2019/06/22 00:02:01 tom Exp $")
NCURSES_EXPORT(WINDOW *)
initscr(void)
@ -60,14 +60,18 @@ initscr(void)
/* Portable applications must not call initscr() more than once */
if (!_nc_globals.init_screen) {
NCURSES_CONST char *name;
const char *env;
char *name;
_nc_globals.init_screen = TRUE;
if ((name = getenv("TERM")) == 0
|| *name == '\0') {
static char unknown_name[] = "unknown";
name = unknown_name;
if ((env = getenv("TERM")) == 0
|| *env == '\0') {
env = "unknown";
}
if ((name = strdup(env)) == NULL) {
fprintf(stderr, "Error opening allocating $TERM.\n");
ExitProgram(EXIT_FAILURE);
}
#ifdef __CYGWIN__
/*
@ -97,6 +101,7 @@ initscr(void)
#else
def_prog_mode();
#endif
free(name);
}
result = stdscr;
_nc_unlock_global(curses);

View File

@ -34,7 +34,7 @@
****************************************************************************/
/*
* $Id: curses.priv.h,v 1.623 2019/06/01 23:41:36 tom Exp $
* $Id: curses.priv.h,v 1.624 2019/06/23 15:20:49 tom Exp $
*
* curses.priv.h
*
@ -1766,12 +1766,16 @@ extern NCURSES_EXPORT_VAR(SIG_ATOMIC_T) _nc_have_sigwinch;
#define TPUTS_TRACE(s) _nc_tputs_trace = s;
#endif
#ifdef HAVE_CONSISTENT_GETENV
#define START_TRACE() \
if ((_nc_tracing & TRACE_MAXIMUM) == 0) { \
int t = _nc_getenv_num("NCURSES_TRACE"); \
if (t >= 0) \
trace((unsigned) t); \
}
#else
#define START_TRACE() /* nothing */
#endif
/*
* Many of the _tracef() calls use static buffers; lock the trace state before

View File

@ -39,7 +39,7 @@
#define CUR SP_TERMTYPE
#endif
MODULE_ID("$Id: lib_acs.c,v 1.48 2019/05/04 23:03:08 tom Exp $")
MODULE_ID("$Id: lib_acs.c,v 1.49 2019/06/23 16:22:10 tom Exp $")
#if BROKEN_LINKER || USE_REENTRANT
#define MyBuffer _nc_prescreen.real_acs_map
@ -317,7 +317,7 @@ _nc_wacs_width(unsigned ch)
result = 1;
break;
default:
result = (wcwidth) (ch);
result = wcwidth(ch);
break;
}
return result;

View File

@ -48,7 +48,7 @@
#include <locale.h>
#endif
MODULE_ID("$Id: lib_setup.c,v 1.199 2019/03/23 23:42:20 tom Exp $")
MODULE_ID("$Id: lib_setup.c,v 1.200 2019/06/22 00:15:32 tom Exp $")
/****************************************************************************
*
@ -628,6 +628,7 @@ TINFO_SETUP_TERM(TERMINAL **tp,
#endif
TERMINAL *termp;
SCREEN *sp = 0;
char *myname;
int code = ERR;
START_TRACE();
@ -656,14 +657,15 @@ TINFO_SETUP_TERM(TERMINAL **tp,
#endif
}
}
myname = strdup(tname);
if (strlen(tname) > MAX_NAME_SIZE) {
if (strlen(myname) > MAX_NAME_SIZE) {
ret_error(TGETENT_ERR,
"TERM environment must be <= %d characters.\n",
MAX_NAME_SIZE);
}
T(("your terminal name is %s", tname));
T(("your terminal name is %s", myname));
/*
* Allow output redirection. This is what SVr3 does. If stdout is
@ -692,8 +694,8 @@ TINFO_SETUP_TERM(TERMINAL **tp,
&& (termp != 0)
&& termp->Filedes == Filedes
&& termp->_termname != 0
&& !strcmp(termp->_termname, tname)
&& _nc_name_match(TerminalType(termp).term_names, tname, "|")) {
&& !strcmp(termp->_termname, myname)
&& _nc_name_match(TerminalType(termp).term_names, myname, "|")) {
T(("reusing existing terminal information and mode-settings"));
code = OK;
#ifdef USE_TERM_DRIVER
@ -735,17 +737,17 @@ TINFO_SETUP_TERM(TERMINAL **tp,
#ifdef USE_TERM_DRIVER
INIT_TERM_DRIVER();
TCB = (TERMINAL_CONTROL_BLOCK *) termp;
code = _nc_globals.term_driver(TCB, tname, errret);
code = _nc_globals.term_driver(TCB, myname, errret);
if (code == OK) {
termp->Filedes = (short) Filedes;
termp->_termname = strdup(tname);
termp->_termname = strdup(myname);
} else {
ret_error0(errret ? *errret : TGETENT_ERR,
"Could not find any driver to handle this terminal.\n");
}
#else
#if NCURSES_USE_DATABASE || NCURSES_USE_TERMCAP
status = _nc_setup_tinfo(tname, &TerminalType(termp));
status = _nc_setup_tinfo(myname, &TerminalType(termp));
T(("_nc_setup_tinfo returns %d", status));
#else
T(("no database available"));
@ -754,7 +756,7 @@ TINFO_SETUP_TERM(TERMINAL **tp,
/* try fallback list if entry on disk */
if (status != TGETENT_YES) {
const TERMTYPE2 *fallback = _nc_fallback2(tname);
const TERMTYPE2 *fallback = _nc_fallback2(myname);
if (fallback) {
T(("found fallback entry"));
@ -768,7 +770,7 @@ TINFO_SETUP_TERM(TERMINAL **tp,
if (status == TGETENT_ERR) {
ret_error0(status, "terminals database is inaccessible\n");
} else if (status == TGETENT_NO) {
ret_error1(status, "unknown terminal type.\n", tname);
ret_error1(status, "unknown terminal type.\n", myname);
}
}
#if NCURSES_EXT_NUMBERS
@ -779,7 +781,7 @@ TINFO_SETUP_TERM(TERMINAL **tp,
#endif
termp->Filedes = (short) Filedes;
termp->_termname = strdup(tname);
termp->_termname = strdup(myname);
set_curterm(termp);
@ -826,15 +828,16 @@ TINFO_SETUP_TERM(TERMINAL **tp,
if ((VALID_STRING(cursor_address)
|| (VALID_STRING(cursor_down) && VALID_STRING(cursor_home)))
&& VALID_STRING(clear_screen)) {
ret_error1(TGETENT_YES, "terminal is not really generic.\n", tname);
ret_error1(TGETENT_YES, "terminal is not really generic.\n", myname);
} else {
del_curterm(termp);
ret_error1(TGETENT_NO, "I need something more specific.\n", tname);
ret_error1(TGETENT_NO, "I need something more specific.\n", myname);
}
} else if (hard_copy) {
ret_error1(TGETENT_YES, "I can't handle hardcopy terminals.\n", tname);
ret_error1(TGETENT_YES, "I can't handle hardcopy terminals.\n", myname);
}
#endif
free(myname);
returnCode(code);
}

View File

@ -84,7 +84,7 @@
#include <ctype.h>
MODULE_ID("$Id: tty_update.c,v 1.303 2019/06/01 23:42:36 tom Exp $")
MODULE_ID("$Id: tty_update.c,v 1.304 2019/06/23 16:22:17 tom Exp $")
/*
* This define controls the line-breakout optimization. Every once in a
@ -210,7 +210,7 @@ GoTo(NCURSES_SP_DCLx int const row, int const col)
}
#if !NCURSES_WCWIDTH_GRAPHICS
#define is_wacs_value(ch) (_nc_wacs_width(ch) == 1 && (wcwidth)(ch) > 1)
#define is_wacs_value(ch) (_nc_wacs_width(ch) == 1 && wcwidth(ch) > 1)
#endif /* !NCURSES_WCWIDTH_GRAPHICS */
static NCURSES_INLINE void

View File

@ -1,8 +1,8 @@
ncurses6 (6.1+20190615) unstable; urgency=low
ncurses6 (6.1+20190623) unstable; urgency=low
* latest weekly patch
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 15 Jun 2019 08:46:35 -0400
-- Thomas E. Dickey <dickey@invisible-island.net> Sun, 23 Jun 2019 11:31:40 -0400
ncurses6 (5.9-20131005) unstable; urgency=low

View File

@ -1,8 +1,8 @@
ncurses6 (6.1+20190615) unstable; urgency=low
ncurses6 (6.1+20190623) unstable; urgency=low
* latest weekly patch
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 15 Jun 2019 08:46:35 -0400
-- Thomas E. Dickey <dickey@invisible-island.net> Sun, 23 Jun 2019 11:31:40 -0400
ncurses6 (5.9-20131005) unstable; urgency=low

View File

@ -1,8 +1,8 @@
ncurses6 (6.1+20190615) unstable; urgency=low
ncurses6 (6.1+20190623) unstable; urgency=low
* latest weekly patch
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 15 Jun 2019 08:46:35 -0400
-- Thomas E. Dickey <dickey@invisible-island.net> Sun, 23 Jun 2019 11:31:40 -0400
ncurses6 (5.9-20120608) unstable; urgency=low

View File

@ -1,4 +1,4 @@
; $Id: mingw-ncurses.nsi,v 1.334 2019/06/15 12:46:35 tom Exp $
; $Id: mingw-ncurses.nsi,v 1.336 2019/06/23 15:31:40 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 "0615"
!define VERSION_MMDD "0623"
!define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}
!define MY_ABI "5"

View File

@ -3,7 +3,7 @@
Summary: shared libraries for terminal handling
Name: mingw32-ncurses6
Version: 6.1
Release: 20190615
Release: 20190623
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz

View File

@ -1,7 +1,7 @@
Summary: shared libraries for terminal handling
Name: ncurses6
Version: 6.1
Release: 20190615
Release: 20190623
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz

View File

@ -1,7 +1,7 @@
Summary: Curses library with POSIX thread support.
Name: ncursest6
Version: 6.1
Release: 20190615
Release: 20190623
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz

View File

@ -1,5 +1,5 @@
/****************************************************************************
* Copyright (c) 2015-2016,2017 Free Software Foundation, Inc. *
* Copyright (c) 2015-2017,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 *
@ -29,7 +29,7 @@
/*
* Author: Thomas E. Dickey
*
* $Id: test_sgr.c,v 1.11 2017/06/24 18:35:25 tom Exp $
* $Id: test_sgr.c,v 1.12 2019/06/22 00:20:06 tom Exp $
*
* A simple demo of the sgr/sgr0 terminal capabilities.
*/
@ -182,22 +182,23 @@ brute_force(const char *name)
char *my_bold;
char *my_revs;
char *my_smso;
char *my_name = strdup(name);
if (db_list) {
putenv(next_dbitem());
}
if (!q_opt)
printf("Terminal type \"%s\"\n", name);
printf("Terminal type \"%s\"\n", my_name);
if (no_init) {
START_TRACE();
} else {
setupterm((NCURSES_CONST char *) name, 1, (int *) 0);
setupterm((NCURSES_CONST char *) my_name, 1, (int *) 0);
}
if (!q_opt) {
if (strcmp(name, ttytype))
if (strcmp(my_name, ttytype))
printf("... actual \"%s\"\n", ttytype);
}