Hello community,
here is the log from the commit of package ncurses for openSUSE:Factory checked in at 2012-07-31 13:36:27
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ncurses (Old)
and /work/SRC/openSUSE:Factory/.ncurses.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ncurses", Maintainer is "werner@suse.com"
Changes:
--------
--- /work/SRC/openSUSE:Factory/ncurses/ncurses.changes 2012-07-21 12:30:53.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.ncurses.new/ncurses.changes 2012-07-31 13:58:46.000000000 +0200
@@ -1,0 +2,29 @@
+Tue Jul 31 09:57:02 UTC 2012 - werner@suse.de
+
+- Add ncurses patch 5.9.20120728
+ + correct path for ncurses_mingw.h in include/headers, in case build
+ is done outside source-tree (patch by Roumen Petrov).
+ + modify some older xterm entries to align with xterm source -TD
+ + separate "xterm-old" alias from "xterm-r6" -TD
+ + add E3 extended capability to xterm-basic and putty -TD
+ + parenthesize parameters of other macros in curses.h -TD
+ + parenthesize parameter of COLOR_PAIR and PAIR_NUMBER in curses.h
+ in case it happens to be a comma-expression, etc. (patch by Nick
+ Black).
+- Add ncurses patch 5.9.20120721
+ + improved form_request_by_name() and menu_request_by_name().
+ + eliminate two fixed-size buffers in toe.c
+ + extend use_tioctl() to have expected behavior when use_env(FALSE) and
+ use_tioctl(TRUE) are called.
+ + modify ncurses test-program, adding -E and -T options to demonstrate
+ use_env() versus use_tioctl().
+- Add NEWS and README to installed package documentation ((bnc#772916)
+
+-------------------------------------------------------------------
+Thu Jul 26 08:06:31 UTC 2012 - werner@suse.de
+
+- Change order of listes authors into the order of relative
+ contributions made (bnc#772916)
+- Add tabs description to description of ncurses-utils (bnc#772916)
+
+-------------------------------------------------------------------
New:
----
ncurses-5.9-overflow.dif
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ncurses.spec ++++++
--- /var/tmp/diff_new_pack.AFKDBJ/_old 2012-07-31 13:58:56.000000000 +0200
+++ /var/tmp/diff_new_pack.AFKDBJ/_new 2012-07-31 13:58:56.000000000 +0200
@@ -46,6 +46,7 @@
Source6: edit.sed
Source7: baselibs.conf
Patch0: ncurses-%{version}.dif
+Patch1: ncurses-5.9-overflow.dif
Patch3: ncurses-5.9-overwrite.dif
Patch4: ncurses-5.7-tack.dif
Patch5: ncurses-5.9-environment.dif
@@ -84,6 +85,8 @@
clear -- emits clear-screen for current terminal
+tabs -- set tabs on a terminal
+
toe -- table of entries utility
tput -- shell-script access to terminal capabilities.
@@ -96,9 +99,9 @@
Authors:
--------
- Zeyd M. Ben-Halim
- Eric S. Raymond
Thomas E. Dickey
+ Eric S. Raymond
+ Zeyd M. Ben-Halim
Juergen Pfeifer
Pavel Curtis
@@ -145,9 +148,9 @@
Authors:
--------
- Zeyd M. Ben-Halim
- Eric S. Raymond
Thomas E. Dickey
+ Eric S. Raymond
+ Zeyd M. Ben-Halim
Juergen Pfeifer
Pavel Curtis
@@ -261,6 +264,7 @@
tar Oxfj %{S:1} | patch -p1 -s
tar xfj %{S:5}
mv tack-* tack
+%patch -P 1 -p0 -b .of
%patch -P 3 -p0 -b .ow
%patch -P 4 -p0 -b .hs
%patch -P 5 -p0 -b .lc
@@ -626,6 +630,8 @@
bzip2 doc/hackguide.doc -c > doc/hackguide.txt.bz2
install -m 644 doc/hackguide.txt.bz2 %{buildroot}%{_defaultdocdir}/ncurses/
install -m 644 %{S:3} %{buildroot}%{_defaultdocdir}/ncurses/
+ install -m 644 README %{buildroot}%{_defaultdocdir}/ncurses/
+ install -m 644 NEWS %{buildroot}%{_defaultdocdir}/ncurses/
mkdir -p %{buildroot}%{_sysconfdir}
mkdir -p %{buildroot}%{_miscdir}
LD_LIBRARY_PATH=$PWD/lib
++++++ ncurses-5.9-overflow.dif ++++++
--- ncurses/base/lib_getch.c
+++ ncurses/base/lib_getch.c 2012-07-31 09:50:17.972509406 +0000
@@ -174,7 +174,7 @@ static NCURSES_INLINE int
fifo_pull(SCREEN *sp)
{
int ch;
- ch = sp->_fifo[head];
+ ch = (head != -1) ? sp->_fifo[head] : ERR;
TR(TRACE_IEVENT, ("pulling %s from %d", _nc_tracechar(sp, ch), head));
if (peek == head) {
++++++ ncurses-5.9-patches.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches/ncurses-5.9-20120721.patch new/patches/ncurses-5.9-20120721.patch
--- old/patches/ncurses-5.9-20120721.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches/ncurses-5.9-20120721.patch 2012-07-23 12:01:02.000000000 +0200
@@ -0,0 +1,674 @@
+# ncurses 5.9 - patch 20120721 - Thomas E. Dickey
+#
+# ------------------------------------------------------------------------------
+#
+# Ncurses 5.9 is at
+# ftp.gnu.org:/pub/gnu
+#
+# Patches for ncurses 5.9 are in the subdirectory
+# ftp://invisible-island.net/ncurses/5.9
+#
+# ------------------------------------------------------------------------------
+# ftp://invisible-island.net/ncurses/5.9/ncurses-5.9-20120721.patch.gz
+# patch by Thomas E. Dickey
+# created Sun Jul 22 00:50:03 UTC 2012
+# ------------------------------------------------------------------------------
+# NEWS | 10 +++++++-
+# dist.mk | 4 +--
+# form/frm_driver.c | 15 +++++++++---
+# form/frm_req_name.c | 21 ++++++++++-------
+# man/curs_util.3x | 34 +++++++++++++++++++++++++----
+# menu/m_req_name.c | 19 +++++++++-------
+# ncurses/base/lib_mouse.c | 4 +--
+# ncurses/tinfo/lib_setup.c | 48 +++++++++++++++++++++--------------------
+# ncurses/tinfo/tinfo_driver.c | 48 ++++++++++++++++++++---------------------
+# package/debian/changelog | 4 +--
+# package/ncurses.spec | 2 -
+# progs/toe.c | 48 +++++++++++++++++++++++++++++------------
+# test/ncurses.c | 16 +++++++++++--
+# 13 files changed, 178 insertions(+), 95 deletions(-)
+# ------------------------------------------------------------------------------
+Index: NEWS
+Prereq: 1.1927
+--- ncurses-5.9-20120714+/NEWS 2012-07-14 23:02:40.000000000 +0000
++++ ncurses-5.9-20120721/NEWS 2012-07-21 23:24:40.000000000 +0000
+@@ -25,7 +25,7 @@
+ -- sale, use or other dealings in this Software without prior written --
+ -- authorization. --
+ -------------------------------------------------------------------------------
+--- $Id: NEWS,v 1.1927 2012/07/14 23:02:40 tom Exp $
++-- $Id: NEWS,v 1.1931 2012/07/21 23:24:40 tom Exp $
+ -------------------------------------------------------------------------------
+
+ This is a log of changes that ncurses has gone through since Zeyd started
+@@ -45,6 +45,14 @@
+ Changes through 1.9.9e did not credit all contributions;
+ it is not possible to add this information.
+
++20120721
++ + improved form_request_by_name() and menu_request_by_name().
++ + eliminate two fixed-size buffers in toe.c
++ + extend use_tioctl() to have expected behavior when use_env(FALSE) and
++ use_tioctl(TRUE) are called.
++ + modify ncurses test-program, adding -E and -T options to demonstrate
++ use_env() versus use_tioctl().
++
+ 20120714
+ + add use_tioctl() function (adapted from patch by Werner Fink,
+ Novell #769788):
+Index: dist.mk
+Prereq: 1.882
+--- ncurses-5.9-20120714+/dist.mk 2012-07-14 17:09:16.000000000 +0000
++++ ncurses-5.9-20120721/dist.mk 2012-07-21 16:14:00.000000000 +0000
+@@ -25,7 +25,7 @@
+ # use or other dealings in this Software without prior written #
+ # authorization. #
+ ##############################################################################
+-# $Id: dist.mk,v 1.882 2012/07/14 17:09:16 tom Exp $
++# $Id: dist.mk,v 1.883 2012/07/21 16:14:00 tom Exp $
+ # Makefile for creating ncurses distributions.
+ #
+ # This only needs to be used directly as a makefile by developers, but
+@@ -37,7 +37,7 @@
+ # These define the major/minor/patch versions of ncurses.
+ NCURSES_MAJOR = 5
+ NCURSES_MINOR = 9
+-NCURSES_PATCH = 20120714
++NCURSES_PATCH = 20120721
+
+ # We don't append the patch to the version, since this only applies to releases
+ VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
+Index: form/frm_driver.c
+Prereq: 1.101
+--- ncurses-5.9-20120714+/form/frm_driver.c 2012-06-10 00:28:04.000000000 +0000
++++ ncurses-5.9-20120721/form/frm_driver.c 2012-07-21 23:23:08.000000000 +0000
+@@ -32,7 +32,7 @@
+
+ #include "form.priv.h"
+
+-MODULE_ID("$Id: frm_driver.c,v 1.101 2012/06/10 00:28:04 tom Exp $")
++MODULE_ID("$Id: frm_driver.c,v 1.102 2012/07/21 23:23:08 tom Exp $")
+
+ /*----------------------------------------------------------------------------
+ This is the core module of the form library. It contains the majority
+@@ -4229,7 +4229,10 @@
+
+ if ((c >= MIN_FORM_COMMAND && c <= MAX_FORM_COMMAND) &&
+ ((bindings[c - MIN_FORM_COMMAND].keycode & Key_Mask) == c))
+- BI = &(bindings[c - MIN_FORM_COMMAND]);
++ {
++ TR(TRACE_CALLS, ("form_request %s", form_request_name(c)));
++ BI = &(bindings[c - MIN_FORM_COMMAND]);
++ }
+
+ if (BI)
+ {
+@@ -4256,9 +4259,13 @@
+ Generic_Method fct = Generic_Methods[method];
+
+ if (fct)
+- res = fct(BI->cmd, form);
++ {
++ res = fct(BI->cmd, form);
++ }
+ else
+- res = (BI->cmd) (form);
++ {
++ res = (BI->cmd) (form);
++ }
+ }
+ }
+ #ifdef NCURSES_MOUSE_VERSION
+Index: form/frm_req_name.c
+Prereq: 1.17
+--- ncurses-5.9-20120714+/form/frm_req_name.c 2009-10-10 16:17:01.000000000 +0000
++++ ncurses-5.9-20120721/form/frm_req_name.c 2012-07-21 23:17:23.000000000 +0000
+@@ -1,5 +1,5 @@
+ /****************************************************************************
+- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. *
++ * Copyright (c) 1998-2009,2012 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 *
+@@ -37,7 +37,7 @@
+
+ #include "form.priv.h"
+
+-MODULE_ID("$Id: frm_req_name.c,v 1.17 2009/10/10 16:17:01 tom Exp $")
++MODULE_ID("$Id: frm_req_name.c,v 1.18 2012/07/21 23:17:23 tom Exp $")
+
+ static const char *request_names[MAX_FORM_COMMAND - MIN_FORM_COMMAND + 1] =
+ {
+@@ -144,23 +144,26 @@
+ /* because the table is so small, it doesn't really hurt
+ to run sequentially through it.
+ */
+- unsigned int i = 0;
+- char buf[16];
++ size_t i = 0;
++ char buf[16]; /* longest name is 10 chars */
+
+ T((T_CALLED("form_request_by_name(%s)"), _nc_visbuf(str)));
+
+- if (str)
++ if (str != 0 && (i = strlen(str)) != 0)
+ {
+- strncpy(buf, str, sizeof(buf));
+- while ((i < sizeof(buf)) && (buf[i] != '\0'))
++ if (i > sizeof(buf) - 2)
++ i = sizeof(buf) - 2;
++ memcpy(buf, str, i);
++ buf[i] = '\0';
++
++ for (i = 0; buf[i] != '\0'; ++i)
+ {
+ buf[i] = (char)toupper(UChar(buf[i]));
+- i++;
+ }
+
+ for (i = 0; i < A_SIZE; i++)
+ {
+- if (strncmp(request_names[i], buf, sizeof(buf)) == 0)
++ if (strcmp(request_names[i], buf) == 0)
+ returnCode(MIN_FORM_COMMAND + (int)i);
+ }
+ }
+Index: man/curs_util.3x
+Prereq: 1.35
+--- ncurses-5.9-20120714+/man/curs_util.3x 2012-07-15 00:23:52.000000000 +0000
++++ ncurses-5.9-20120721/man/curs_util.3x 2012-07-21 18:51:10.000000000 +0000
+@@ -1,3 +1,4 @@
++'\" t
+ .\"***************************************************************************
+ .\" Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. *
+ .\" *
+@@ -26,7 +27,7 @@
+ .\" authorization. *
+ .\"***************************************************************************
+ .\"
+-.\" $Id: curs_util.3x,v 1.35 2012/07/15 00:23:52 tom Exp $
++.\" $Id: curs_util.3x,v 1.36 2012/07/21 18:51:10 tom Exp $
+ .TH curs_util 3X ""
+ .de bP
+ .IP \(bu 4
+@@ -136,14 +137,15 @@
+ Normally ncurses looks first at the terminal database for the screen size.
+ .IP
+ If \fBuse_env\fP was called with \fBFALSE\fP for parameter,
+-it stops here.
++it stops here unless
++If \fBuse_tioctl\fP was also called with \fBTRUE\fP for parameter.
+ .bP
+ Then it asks for the screen size via operating system calls.
+ If successful,
+ it overrides the values from the terminal database.
+ .bP
+-Finally, ncurses examines the
+-\fBLINES\fR or \fBCOLUMNS\fR environment variables,
++Finally (unless \fBuse_env\fP was called with \fBFALSE\fP parameter),
++ncurses examines the \fBLINES\fR or \fBCOLUMNS\fR environment variables,
+ using a value in those to override the results
+ from the operating system or terminal database.
+ .IP
+@@ -166,6 +168,30 @@
+ ncurses re-fetches the value of the environment variables so that
+ it is still the environment variables which set the screen size.
+ .PP
++The \fBuse_env\fP and \fBuse_tioctl\fP routines combine as
++summarized here:
++.TS
++center tab(/);
++l l l
++_ _ _
++lw7 lw7 lw40.
++\fIuse_env\fR/\fIuse_tioctl\fR/\fISummary\fR
++TRUE/FALSE/T{
++This is the default behavior.
++ncurses uses operating system calls
++unless overridden by $LINES or $COLUMNS environment variables.
++T}
++TRUE/TRUE/T{
++ncurses updates $LINES and $COLUMNS based on operating system calls.
++T}
++FALSE/TRUE/T{
++ncurses ignores $LINES and $COLUMNS, uses operating system calls to obtain size.
++T}
++FALSE/FALSE/T{
++ncurses relies on the terminal database to determine size.
++T}
++.TE
++.PP
+ The \fBputwin\fR routine writes all data associated with window \fIwin\fR into
+ the file to which \fIfilep\fR points. This information can be later retrieved
+ using the \fBgetwin\fR function.
+Index: menu/m_req_name.c
+Prereq: 1.21
+--- ncurses-5.9-20120714+/menu/m_req_name.c 2009-10-10 16:17:23.000000000 +0000
++++ ncurses-5.9-20120721/menu/m_req_name.c 2012-07-21 23:27:32.000000000 +0000
+@@ -1,5 +1,5 @@
+ /****************************************************************************
+- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. *
++ * Copyright (c) 1998-2009,2012 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 *
+@@ -37,7 +37,7 @@
+
+ #include "menu.priv.h"
+
+-MODULE_ID("$Id: m_req_name.c,v 1.21 2009/10/10 16:17:23 tom Exp $")
++MODULE_ID("$Id: m_req_name.c,v 1.22 2012/07/21 23:27:32 tom Exp $")
+
+ static const char *request_names[MAX_MENU_COMMAND - MIN_MENU_COMMAND + 1] =
+ {
+@@ -99,23 +99,26 @@
+ /* because the table is so small, it doesn't really hurt
+ to run sequentially through it.
+ */
+- unsigned int i = 0;
++ size_t i = 0;
+ char buf[16];
+
+ T((T_CALLED("menu_request_by_name(%s)"), _nc_visbuf(str)));
+
+- if (str)
++ if (str != 0 && (i = strlen(str)) != 0)
+ {
+- strncpy(buf, str, sizeof(buf));
+- while ((i < sizeof(buf)) && (buf[i] != '\0'))
++ if (i > sizeof(buf) - 2)
++ i = sizeof(buf) - 2;
++ memcpy(buf, str, i);
++ buf[i] = '\0';
++
++ for (i = 0; buf[i] != '\0'; ++i)
+ {
+ buf[i] = (char)toupper(UChar(buf[i]));
+- i++;
+ }
+
+ for (i = 0; i < A_SIZE; i++)
+ {
+- if (strncmp(request_names[i], buf, sizeof(buf)) == 0)
++ if (strcmp(request_names[i], buf) == 0)
+ returnCode(MIN_MENU_COMMAND + (int)i);
+ }
+ }
+Index: ncurses/base/lib_mouse.c
+Prereq: 1.138
+--- ncurses-5.9-20120714+/ncurses/base/lib_mouse.c 2012-02-29 10:38:46.000000000 +0000
++++ ncurses-5.9-20120721/ncurses/base/lib_mouse.c 2012-07-21 23:30:50.000000000 +0000
+@@ -84,7 +84,7 @@
+ #define CUR SP_TERMTYPE
+ #endif
+
+-MODULE_ID("$Id: lib_mouse.c,v 1.138 2012/02/29 10:38:46 tom Exp $")
++MODULE_ID("$Id: lib_mouse.c,v 1.139 2012/07/21 23:30:50 tom Exp $")
+
+ #include
+
+@@ -225,7 +225,7 @@
+ char buf[6];
+ unsigned long ignore;
+
+- strncpy(buf, key_mouse, 3); /* should be "\033[M" */
++ strcpy(buf, "\033[M"); /* should be the same as key_mouse */
+ buf[3] = ' ' + (button - 1) + (down ? 0 : 0x40);
+ buf[4] = ' ' + x - LEFT_COL + 1;
+ buf[5] = ' ' + y - TOP_ROW + 1;
+Index: ncurses/tinfo/lib_setup.c
+Prereq: 1.147
+--- ncurses-5.9-20120714+/ncurses/tinfo/lib_setup.c 2012-07-14 23:59:26.000000000 +0000
++++ ncurses-5.9-20120721/ncurses/tinfo/lib_setup.c 2012-07-21 18:05:41.000000000 +0000
+@@ -48,7 +48,7 @@
+ #include
+ #endif
+
+-MODULE_ID("$Id: lib_setup.c,v 1.147 2012/07/14 23:59:26 tom Exp $")
++MODULE_ID("$Id: lib_setup.c,v 1.148 2012/07/21 18:05:41 tom Exp $")
+
+ /****************************************************************************
+ *
+@@ -304,7 +304,7 @@
+ *linep = (int) lines;
+ *colp = (int) columns;
+
+- if (_nc_prescreen.use_env) {
++ if (_nc_prescreen.use_env || _nc_prescreen.use_tioctl) {
+ int value;
+
+ #ifdef __EMX__
+@@ -340,33 +340,35 @@
+ }
+ #endif /* HAVE_SIZECHANGE */
+
+- if (_nc_prescreen.use_tioctl) {
++ if (_nc_prescreen.use_env) {
++ if (_nc_prescreen.use_tioctl) {
++ /*
++ * If environment variables are used, update them.
++ */
++ if ((sp == 0 || !sp->_filtered) && _nc_getenv_num("LINES") > 0) {
++ _nc_setenv_num("LINES", *linep);
++ }
++ if (_nc_getenv_num("COLUMNS") > 0) {
++ _nc_setenv_num("COLUMNS", *colp);
++ }
++ }
++
+ /*
+- * If environment variables are used, update them.
++ * Finally, look for environment variables.
++ *
++ * Solaris lets users override either dimension with an environment
++ * variable.
+ */
+- if ((sp == 0 || !sp->_filtered) && _nc_getenv_num("LINES") > 0) {
+- _nc_setenv_num("LINES", *linep);
++ if ((value = _nc_getenv_num("LINES")) > 0) {
++ *linep = value;
++ T(("screen size: environment LINES = %d", *linep));
+ }
+- if (_nc_getenv_num("COLUMNS") > 0) {
+- _nc_setenv_num("COLUMNS", *colp);
++ if ((value = _nc_getenv_num("COLUMNS")) > 0) {
++ *colp = value;
++ T(("screen size: environment COLUMNS = %d", *colp));
+ }
+ }
+
+- /*
+- * Finally, look for environment variables.
+- *
+- * Solaris lets users override either dimension with an environment
+- * variable.
+- */
+- if ((value = _nc_getenv_num("LINES")) > 0) {
+- *linep = value;
+- T(("screen size: environment LINES = %d", *linep));
+- }
+- if ((value = _nc_getenv_num("COLUMNS")) > 0) {
+- *colp = value;
+- T(("screen size: environment COLUMNS = %d", *colp));
+- }
+-
+ /* if we can't get dynamic info about the size, use static */
+ if (*linep <= 0) {
+ *linep = (int) lines;
+Index: ncurses/tinfo/tinfo_driver.c
+Prereq: 1.21
+--- ncurses-5.9-20120714+/ncurses/tinfo/tinfo_driver.c 2012-07-15 00:20:43.000000000 +0000
++++ ncurses-5.9-20120721/ncurses/tinfo/tinfo_driver.c 2012-07-22 00:45:34.000000000 +0000
+@@ -50,7 +50,7 @@
+ # endif
+ #endif
+
+-MODULE_ID("$Id: tinfo_driver.c,v 1.21 2012/07/15 00:20:43 tom Exp $")
++MODULE_ID("$Id: tinfo_driver.c,v 1.23 2012/07/22 00:45:34 tom Exp $")
+
+ /*
+ * SCO defines TIOCGSIZE and the corresponding struct. Other systems (SunOS,
+@@ -361,7 +361,7 @@
+ *linep = (int) lines;
+ *colp = (int) columns;
+
+- if (useEnv) {
++ if (useEnv || useTioctl) {
+ int value;
+
+ #ifdef __EMX__
+@@ -400,35 +400,35 @@
+ }
+ #endif /* HAVE_SIZECHANGE */
+
+- if (useTioctl) {
+- char buf[128];
++ if (useEnv) {
++ if (useTioctl) {
++ /*
++ * If environment variables are used, update them.
++ */
++ if ((sp == 0 || !sp->_filtered) && _nc_getenv_num("LINES") > 0) {
++ _nc_setenv_num("LINES", *linep);
++ }
++ if (_nc_getenv_num("COLUMNS") > 0) {
++ _nc_setenv_num("COLUMNS", *colp);
++ }
++ }
+
+ /*
+- * If environment variables are used, update them.
++ * Finally, look for environment variables.
++ *
++ * Solaris lets users override either dimension with an environment
++ * variable.
+ */
+- if ((sp == 0 || !sp->_filtered) && _nc_getenv_num("LINES") > 0) {
+- _nc_setenv_num("LINES", *linep);
++ if ((value = _nc_getenv_num("LINES")) > 0) {
++ *linep = value;
++ T(("screen size: environment LINES = %d", *linep));
+ }
+- if (_nc_getenv_num("COLUMNS") > 0) {
+- _nc_setenv_num("COLUMNS", *colp);
++ if ((value = _nc_getenv_num("COLUMNS")) > 0) {
++ *colp = value;
++ T(("screen size: environment COLUMNS = %d", *colp));
+ }
+ }
+
+- /*
+- * Finally, look for environment variables.
+- *
+- * Solaris lets users override either dimension with an environment
+- * variable.
+- */
+- if ((value = _nc_getenv_num("LINES")) > 0) {
+- *linep = value;
+- T(("screen size: environment LINES = %d", *linep));
+- }
+- if ((value = _nc_getenv_num("COLUMNS")) > 0) {
+- *colp = value;
+- T(("screen size: environment COLUMNS = %d", *colp));
+- }
+-
+ /* if we can't get dynamic info about the size, use static */
+ if (*linep <= 0) {
+ *linep = (int) lines;
+Index: package/debian/changelog
+--- ncurses-5.9-20120714+/package/debian/changelog 2012-07-14 23:07:30.000000000 +0000
++++ ncurses-5.9-20120721/package/debian/changelog 2012-07-21 23:33:11.000000000 +0000
+@@ -1,8 +1,8 @@
+-ncurses6 (5.9-20120714) unstable; urgency=low
++ncurses6 (5.9-20120721) unstable; urgency=low
+
+ * latest weekly patch
+
+- -- Thomas E. Dickey Sat, 14 Jul 2012 19:07:27 -0400
++ -- Thomas E. Dickey Sat, 21 Jul 2012 19:33:07 -0400
+
+ ncurses6 (5.9-20120608) unstable; urgency=low
+
+Index: package/ncurses.spec
+--- ncurses-5.9-20120714+/package/ncurses.spec 2012-07-14 23:07:12.000000000 +0000
++++ ncurses-5.9-20120721/package/ncurses.spec 2012-07-21 23:32:52.000000000 +0000
+@@ -1,7 +1,7 @@
+ Summary: shared libraries for terminal handling
+ Name: ncurses6
+ Release: 5.9
+-Version: 20120714
++Version: 20120721
+ License: X11
+ Group: Development/Libraries
+ Source: ncurses-%{release}-%{version}.tgz
+Index: progs/toe.c
+Prereq: 1.67
+--- ncurses-5.9-20120714+/progs/toe.c 2012-03-10 23:22:21.000000000 +0000
++++ ncurses-5.9-20120721/progs/toe.c 2012-07-21 22:55:59.000000000 +0000
+@@ -44,7 +44,7 @@
+ #include
+ #endif
+
+-MODULE_ID("$Id: toe.c,v 1.67 2012/03/10 23:22:21 tom Exp $")
++MODULE_ID("$Id: toe.c,v 1.68 2012/07/21 22:55:59 tom Exp $")
+
+ #define isDotname(name) (!strcmp(name, ".") || !strcmp(name, ".."))
+
+@@ -345,6 +345,21 @@
+ }
+ #endif
+
++#if USE_DATABASE
++static char *
++copy_entryname(DIRENT * src)
++{
++ size_t len = NAMLEN(src);
++ char *result = malloc(len + 1);
++ if (result == 0)
++ failed("copy entryname");
++ memcpy(result, src->d_name, len);
++ result[len] = '\0';
++
++ return result;
++}
++#endif
++
+ static int
+ typelist(int eargc, char *eargv[],
+ bool verbosity,
+@@ -372,24 +387,28 @@
+ (void) printf("#\n#%s:\n#\n", eargv[i]);
+
+ while ((subdir = readdir(termdir)) != 0) {
+- size_t len = NAMLEN(subdir);
+- size_t cwd_len = len + strlen(eargv[i]) + 3;
+- char name_1[PATH_MAX];
++ size_t cwd_len;
++ char *name_1;
+ DIR *entrydir;
+ DIRENT *entry;
+
++ name_1 = copy_entryname(subdir);
++ if (isDotname(name_1)) {
++ free(name_1);
++ continue;
++ }
++
++ cwd_len = NAMLEN(subdir) + strlen(eargv[i]) + 3;
+ cwd_buf = typeRealloc(char, cwd_len, cwd_buf);
+ if (cwd_buf == 0)
+ failed("realloc cwd_buf");
+
+ assert(cwd_buf != 0);
+
+- strncpy(name_1, subdir->d_name, len)[len] = '\0';
+- if (isDotname(name_1))
+- continue;
+-
+ _nc_SPRINTF(cwd_buf, _nc_SLIMIT(cwd_len)
+- "%s/%.*s/", eargv[i], (int) len, name_1);
++ "%s/%s/", eargv[i], name_1);
++ free(name_1);
++
+ if (chdir(cwd_buf) != 0)
+ continue;
+
+@@ -399,15 +418,16 @@
+ continue;
+ }
+ while ((entry = readdir(entrydir)) != 0) {
+- char name_2[PATH_MAX];
++ char *name_2;
+ TERMTYPE lterm;
+ char *cn;
+ int status;
+
+- len = NAMLEN(entry);
+- strncpy(name_2, entry->d_name, len)[len] = '\0';
+- if (isDotname(name_2) || !_nc_is_file_path(name_2))
++ name_2 = copy_entryname(entry);
++ if (isDotname(name_2) || !_nc_is_file_path(name_2)) {
++ free(name_2);
+ continue;
++ }
+
+ status = _nc_read_file_entry(name_2, <erm);
+ if (status <= 0) {
+@@ -415,6 +435,7 @@
+ (void) fprintf(stderr,
+ "%s: couldn't open terminfo file %s.\n",
+ _nc_progname, name_2);
++ free(name_2);
+ return (EXIT_FAILURE);
+ }
+
+@@ -425,6 +446,7 @@
+ hook(i, eargc, cn, <erm);
+ }
+ _nc_free_termtype(<erm);
++ free(name_2);
+ }
+ closedir(entrydir);
+ }
+Index: test/ncurses.c
+Prereq: 1.372
+--- ncurses-5.9-20120714+/test/ncurses.c 2012-07-07 18:09:38.000000000 +0000
++++ ncurses-5.9-20120721/test/ncurses.c 2012-07-21 17:40:21.000000000 +0000
+@@ -40,7 +40,7 @@
+ Author: Eric S. Raymond 1993
+ Thomas E. Dickey (beginning revision 1.27 in 1996).
+
+-$Id: ncurses.c,v 1.372 2012/07/07 18:09:38 tom Exp $
++$Id: ncurses.c,v 1.373 2012/07/21 17:40:21 tom Exp $
+
+ ***************************************************************************/
+
+@@ -6497,6 +6497,7 @@
+ ," -a f,b set default-colors (assumed white-on-black)"
+ ," -d use default-colors if terminal supports them"
+ #endif
++ ," -E call use_env(FALSE) to ignore $LINES and $COLUMNS"
+ #if USE_SOFTKEYS
+ ," -e fmt specify format for soft-keys test (e)"
+ #endif
+@@ -6509,6 +6510,9 @@
+ #if USE_LIBPANEL
+ ," -s msec specify nominal time for panel-demo (default: 1, to hold)"
+ #endif
++#if defined(NCURSES_VERSION_PATCH) && (NCURSES_VERSION_PATCH >= 20120714)
++ ," -T call use_tioctl(TRUE) to allow SIGWINCH to override environment"
++#endif
+ #ifdef TRACE
+ ," -t mask specify default trace-level (may toggle with ^T)"
+ #endif
+@@ -6695,7 +6699,7 @@
+
+ setlocale(LC_ALL, "");
+
+- while ((c = getopt(argc, argv, "a:de:fhmp:s:t:")) != -1) {
++ while ((c = getopt(argc, argv, "a:dEe:fhmp:s:Tt:")) != -1) {
+ switch (c) {
+ #ifdef NCURSES_VERSION
+ case 'a':
+@@ -6706,6 +6710,9 @@
+ default_colors = TRUE;
+ break;
+ #endif
++ case 'E':
++ use_env(FALSE);
++ break;
+ case 'e':
+ my_e_param = atoi(optarg);
+ #ifdef NCURSES_VERSION
+@@ -6735,6 +6742,11 @@
+ nap_msec = (int) atol(optarg);
+ break;
+ #endif
++#if defined(NCURSES_VERSION_PATCH) && (NCURSES_VERSION_PATCH >= 20120714)
++ case 'T':
++ use_tioctl(TRUE);
++ break;
++#endif
+ #ifdef TRACE
+ case 't':
+ save_trace = (unsigned) strtol(optarg, 0, 0);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches/ncurses-5.9-20120728.patch new/patches/ncurses-5.9-20120728.patch
--- old/patches/ncurses-5.9-20120728.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches/ncurses-5.9-20120728.patch 2012-07-31 11:00:43.000000000 +0200
@@ -0,0 +1,685 @@
+# ncurses 5.9 - patch 20120728 - Thomas E. Dickey
+#
+# ------------------------------------------------------------------------------
+#
+# Ncurses 5.9 is at
+# ftp.gnu.org:/pub/gnu
+#
+# Patches for ncurses 5.9 are in the subdirectory
+# ftp://invisible-island.net/ncurses/5.9
+#
+# ------------------------------------------------------------------------------
+# ftp://invisible-island.net/ncurses/5.9/ncurses-5.9-20120728.patch.gz
+# patch by Thomas E. Dickey
+# created Sun Jul 29 00:02:59 UTC 2012
+# ------------------------------------------------------------------------------
+# NEWS | 13 +++
+# dist.mk | 4 -
+# include/curses.h.in | 158 ++++++++++++++++++++---------------------
+# include/curses.wide | 136 +++++++++++++++++------------------
+# include/headers | 4 -
+# misc/terminfo.src | 42 +++++++---
+# ncurses/tinfo/tinfo_driver.c | 4 -
+# package/debian/changelog | 4 -
+# package/ncurses.spec | 2
+# 9 files changed, 194 insertions(+), 173 deletions(-)
+# ------------------------------------------------------------------------------
+Index: NEWS
+Prereq: 1.1931
+--- ncurses-5.9-20120721+/NEWS 2012-07-21 23:24:40.000000000 +0000
++++ ncurses-5.9-20120728/NEWS 2012-07-29 00:02:10.000000000 +0000
+@@ -25,7 +25,7 @@
+ -- sale, use or other dealings in this Software without prior written --
+ -- authorization. --
+ -------------------------------------------------------------------------------
+--- $Id: NEWS,v 1.1931 2012/07/21 23:24:40 tom Exp $
++-- $Id: NEWS,v 1.1936 2012/07/29 00:02:10 tom Exp $
+ -------------------------------------------------------------------------------
+
+ This is a log of changes that ncurses has gone through since Zeyd started
+@@ -45,6 +45,17 @@
+ Changes through 1.9.9e did not credit all contributions;
+ it is not possible to add this information.
+
++20120728
++ + correct path for ncurses_mingw.h in include/headers, in case build
++ is done outside source-tree (patch by Roumen Petrov).
++ + modify some older xterm entries to align with xterm source -TD
++ + separate "xterm-old" alias from "xterm-r6" -TD
++ + add E3 extended capability to xterm-basic and putty -TD
++ + parenthesize parameters of other macros in curses.h -TD
++ + parenthesize parameter of COLOR_PAIR and PAIR_NUMBER in curses.h
++ in case it happens to be a comma-expression, etc. (patch by Nick
++ Black).
++
+ 20120721
+ + improved form_request_by_name() and menu_request_by_name().
+ + eliminate two fixed-size buffers in toe.c
+Index: dist.mk
+Prereq: 1.883
+--- ncurses-5.9-20120721+/dist.mk 2012-07-21 16:14:00.000000000 +0000
++++ ncurses-5.9-20120728/dist.mk 2012-07-28 17:43:44.000000000 +0000
+@@ -25,7 +25,7 @@
+ # use or other dealings in this Software without prior written #
+ # authorization. #
+ ##############################################################################
+-# $Id: dist.mk,v 1.883 2012/07/21 16:14:00 tom Exp $
++# $Id: dist.mk,v 1.884 2012/07/28 17:43:44 tom Exp $
+ # Makefile for creating ncurses distributions.
+ #
+ # This only needs to be used directly as a makefile by developers, but
+@@ -37,7 +37,7 @@
+ # These define the major/minor/patch versions of ncurses.
+ NCURSES_MAJOR = 5
+ NCURSES_MINOR = 9
+-NCURSES_PATCH = 20120721
++NCURSES_PATCH = 20120728
+
+ # We don't append the patch to the version, since this only applies to releases
+ VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
+Index: include/curses.h.in
+Prereq: 1.230
+--- ncurses-5.9-20120721+/include/curses.h.in 2012-07-14 21:31:23.000000000 +0000
++++ ncurses-5.9-20120728/include/curses.h.in 2012-07-28 18:17:43.000000000 +0000
+@@ -32,7 +32,7 @@
+ * and: Thomas E. Dickey 1996-on *
+ ****************************************************************************/
+
+-/* $Id: curses.h.in,v 1.230 2012/07/14 21:31:23 tom Exp $ */
++/* $Id: curses.h.in,v 1.232 2012/07/28 18:17:43 tom Exp $ */
+
+ #ifndef __NCURSES_H
+ #define __NCURSES_H
+@@ -263,7 +263,7 @@
+ extern NCURSES_EXPORT_VAR(chtype) acs_map[];
+ #endif
+
+-#define NCURSES_ACS(c) (acs_map[NCURSES_CAST(unsigned char,c)])
++#define NCURSES_ACS(c) (acs_map[NCURSES_CAST(unsigned char,(c))])
+
+ /* VT100 symbols begin here */
+ #define ACS_ULCORNER NCURSES_ACS('l') /* upper left corner */
+@@ -1099,7 +1099,7 @@
+ */
+
+ #define wgetstr(w, s) wgetnstr(w, s, -1)
+-#define getnstr(s, n) wgetnstr(stdscr, s, n)
++#define getnstr(s, n) wgetnstr(stdscr, s, (n))
+
+ #define setterm(term) setupterm(term, 1, (int *)0)
+
+@@ -1152,8 +1152,8 @@
+
+ #define box(win, v, h) wborder(win, v, v, h, h, 0, 0, 0, 0)
+ #define border(ls, rs, ts, bs, tl, tr, bl, br) wborder(stdscr, ls, rs, ts, bs, tl, tr, bl, br)
+-#define hline(ch, n) whline(stdscr, ch, n)
+-#define vline(ch, n) wvline(stdscr, ch, n)
++#define hline(ch, n) whline(stdscr, ch, (n))
++#define vline(ch, n) wvline(stdscr, ch, (n))
+
+ #define winstr(w, s) winnstr(w, s, -1)
+ #define winchstr(w, s) winchnstr(w, s, -1)
+@@ -1169,55 +1169,55 @@
+ /*
+ * These apply to the first 256 color pairs.
+ */
+-#define COLOR_PAIR(n) NCURSES_BITS(n, 0)
+-#define PAIR_NUMBER(a) (NCURSES_CAST(int,((NCURSES_CAST(unsigned long,a) & A_COLOR) >> NCURSES_ATTR_SHIFT)))
++#define COLOR_PAIR(n) NCURSES_BITS((n), 0)
++#define PAIR_NUMBER(a) (NCURSES_CAST(int,((NCURSES_CAST(unsigned long,(a)) & A_COLOR) >> NCURSES_ATTR_SHIFT)))
+
+ /*
+ * pseudo functions for standard screen
+ */
+
+-#define addch(ch) waddch(stdscr,ch)
+-#define addchnstr(str,n) waddchnstr(stdscr,str,n)
+-#define addchstr(str) waddchstr(stdscr,str)
+-#define addnstr(str,n) waddnstr(stdscr,str,n)
+-#define addstr(str) waddnstr(stdscr,str,-1)
+-#define attroff(at) wattroff(stdscr,at)
+-#define attron(at) wattron(stdscr,at)
+-#define attrset(at) wattrset(stdscr,at)
+-#define attr_get(ap,cp,o) wattr_get(stdscr,ap,cp,o)
+-#define attr_off(a,o) wattr_off(stdscr,a,o)
+-#define attr_on(a,o) wattr_on(stdscr,a,o)
+-#define attr_set(a,c,o) wattr_set(stdscr,a,c,o)
+-#define bkgd(ch) wbkgd(stdscr,ch)
+-#define bkgdset(ch) wbkgdset(stdscr,ch)
+-#define chgat(n,a,c,o) wchgat(stdscr,n,a,c,o)
++#define addch(ch) waddch(stdscr,(ch))
++#define addchnstr(str,n) waddchnstr(stdscr,(str),(n))
++#define addchstr(str) waddchstr(stdscr,(str))
++#define addnstr(str,n) waddnstr(stdscr,(str),(n))
++#define addstr(str) waddnstr(stdscr,(str),-1)
++#define attroff(at) wattroff(stdscr,(at))
++#define attron(at) wattron(stdscr,(at))
++#define attrset(at) wattrset(stdscr,(at))
++#define attr_get(ap,cp,o) wattr_get(stdscr,(ap),(cp),(o))
++#define attr_off(a,o) wattr_off(stdscr,(a),(o))
++#define attr_on(a,o) wattr_on(stdscr,(a),(o))
++#define attr_set(a,c,o) wattr_set(stdscr,(a),(c),(o))
++#define bkgd(ch) wbkgd(stdscr,(ch))
++#define bkgdset(ch) wbkgdset(stdscr,(ch))
++#define chgat(n,a,c,o) wchgat(stdscr,(n),(a),(c),(o))
+ #define clear() wclear(stdscr)
+ #define clrtobot() wclrtobot(stdscr)
+ #define clrtoeol() wclrtoeol(stdscr)
+-#define color_set(c,o) wcolor_set(stdscr,c,o)
++#define color_set(c,o) wcolor_set(stdscr,(c),(o))
+ #define delch() wdelch(stdscr)
+ #define deleteln() winsdelln(stdscr,-1)
+-#define echochar(c) wechochar(stdscr,c)
++#define echochar(c) wechochar(stdscr,(c))
+ #define erase() werase(stdscr)
+ #define getch() wgetch(stdscr)
+-#define getstr(str) wgetstr(stdscr,str)
++#define getstr(str) wgetstr(stdscr,(str))
+ #define inch() winch(stdscr)
+-#define inchnstr(s,n) winchnstr(stdscr,s,n)
+-#define inchstr(s) winchstr(stdscr,s)
+-#define innstr(s,n) winnstr(stdscr,s,n)
+-#define insch(c) winsch(stdscr,c)
+-#define insdelln(n) winsdelln(stdscr,n)
++#define inchnstr(s,n) winchnstr(stdscr,(s),(n))
++#define inchstr(s) winchstr(stdscr,(s))
++#define innstr(s,n) winnstr(stdscr,(s),(n))
++#define insch(c) winsch(stdscr,(c))
++#define insdelln(n) winsdelln(stdscr,(n))
+ #define insertln() winsdelln(stdscr,1)
+-#define insnstr(s,n) winsnstr(stdscr,s,n)
+-#define insstr(s) winsstr(stdscr,s)
+-#define instr(s) winstr(stdscr,s)
+-#define move(y,x) wmove(stdscr,y,x)
++#define insnstr(s,n) winsnstr(stdscr,(s),(n))
++#define insstr(s) winsstr(stdscr,(s))
++#define instr(s) winstr(stdscr,(s))
++#define move(y,x) wmove(stdscr,(y),(x))
+ #define refresh() wrefresh(stdscr)
+-#define scrl(n) wscrl(stdscr,n)
+-#define setscrreg(t,b) wsetscrreg(stdscr,t,b)
++#define scrl(n) wscrl(stdscr,(n))
++#define setscrreg(t,b) wsetscrreg(stdscr,(t),(b))
+ #define standend() wstandend(stdscr)
+ #define standout() wstandout(stdscr)
+-#define timeout(delay) wtimeout(stdscr,delay)
++#define timeout(delay) wtimeout(stdscr,(delay))
+ #define wdeleteln(win) winsdelln(win,-1)
+ #define winsertln(win) winsdelln(win,1)
+
+@@ -1225,47 +1225,47 @@
+ * mv functions
+ */
+
+-#define mvwaddch(win,y,x,ch) (wmove(win,y,x) == ERR ? ERR : waddch(win,ch))
+-#define mvwaddchnstr(win,y,x,str,n) (wmove(win,y,x) == ERR ? ERR : waddchnstr(win,str,n))
+-#define mvwaddchstr(win,y,x,str) (wmove(win,y,x) == ERR ? ERR : waddchnstr(win,str,-1))
+-#define mvwaddnstr(win,y,x,str,n) (wmove(win,y,x) == ERR ? ERR : waddnstr(win,str,n))
+-#define mvwaddstr(win,y,x,str) (wmove(win,y,x) == ERR ? ERR : waddnstr(win,str,-1))
+-#define mvwdelch(win,y,x) (wmove(win,y,x) == ERR ? ERR : wdelch(win))
+-#define mvwchgat(win,y,x,n,a,c,o) (wmove(win,y,x) == ERR ? ERR : wchgat(win,n,a,c,o))
+-#define mvwgetch(win,y,x) (wmove(win,y,x) == ERR ? ERR : wgetch(win))
+-#define mvwgetnstr(win,y,x,str,n) (wmove(win,y,x) == ERR ? ERR : wgetnstr(win,str,n))
+-#define mvwgetstr(win,y,x,str) (wmove(win,y,x) == ERR ? ERR : wgetstr(win,str))
+-#define mvwhline(win,y,x,c,n) (wmove(win,y,x) == ERR ? ERR : whline(win,c,n))
+-#define mvwinch(win,y,x) (wmove(win,y,x) == ERR ? NCURSES_CAST(chtype, ERR) : winch(win))
+-#define mvwinchnstr(win,y,x,s,n) (wmove(win,y,x) == ERR ? ERR : winchnstr(win,s,n))
+-#define mvwinchstr(win,y,x,s) (wmove(win,y,x) == ERR ? ERR : winchstr(win,s))
+-#define mvwinnstr(win,y,x,s,n) (wmove(win,y,x) == ERR ? ERR : winnstr(win,s,n))
+-#define mvwinsch(win,y,x,c) (wmove(win,y,x) == ERR ? ERR : winsch(win,c))
+-#define mvwinsnstr(win,y,x,s,n) (wmove(win,y,x) == ERR ? ERR : winsnstr(win,s,n))
+-#define mvwinsstr(win,y,x,s) (wmove(win,y,x) == ERR ? ERR : winsstr(win,s))
+-#define mvwinstr(win,y,x,s) (wmove(win,y,x) == ERR ? ERR : winstr(win,s))
+-#define mvwvline(win,y,x,c,n) (wmove(win,y,x) == ERR ? ERR : wvline(win,c,n))
+-
+-#define mvaddch(y,x,ch) mvwaddch(stdscr,y,x,ch)
+-#define mvaddchnstr(y,x,str,n) mvwaddchnstr(stdscr,y,x,str,n)
+-#define mvaddchstr(y,x,str) mvwaddchstr(stdscr,y,x,str)
+-#define mvaddnstr(y,x,str,n) mvwaddnstr(stdscr,y,x,str,n)
+-#define mvaddstr(y,x,str) mvwaddstr(stdscr,y,x,str)
+-#define mvchgat(y,x,n,a,c,o) mvwchgat(stdscr,y,x,n,a,c,o)
+-#define mvdelch(y,x) mvwdelch(stdscr,y,x)
+-#define mvgetch(y,x) mvwgetch(stdscr,y,x)
+-#define mvgetnstr(y,x,str,n) mvwgetnstr(stdscr,y,x,str,n)
+-#define mvgetstr(y,x,str) mvwgetstr(stdscr,y,x,str)
+-#define mvhline(y,x,c,n) mvwhline(stdscr,y,x,c,n)
+-#define mvinch(y,x) mvwinch(stdscr,y,x)
+-#define mvinchnstr(y,x,s,n) mvwinchnstr(stdscr,y,x,s,n)
+-#define mvinchstr(y,x,s) mvwinchstr(stdscr,y,x,s)
+-#define mvinnstr(y,x,s,n) mvwinnstr(stdscr,y,x,s,n)
+-#define mvinsch(y,x,c) mvwinsch(stdscr,y,x,c)
+-#define mvinsnstr(y,x,s,n) mvwinsnstr(stdscr,y,x,s,n)
+-#define mvinsstr(y,x,s) mvwinsstr(stdscr,y,x,s)
+-#define mvinstr(y,x,s) mvwinstr(stdscr,y,x,s)
+-#define mvvline(y,x,c,n) mvwvline(stdscr,y,x,c,n)
++#define mvwaddch(win,y,x,ch) (wmove((win),(y),(x)) == ERR ? ERR : waddch((win),(ch)))
++#define mvwaddchnstr(win,y,x,str,n) (wmove((win),(y),(x)) == ERR ? ERR : waddchnstr((win),(str),(n)))
++#define mvwaddchstr(win,y,x,str) (wmove((win),(y),(x)) == ERR ? ERR : waddchnstr((win),(str),-1))
++#define mvwaddnstr(win,y,x,str,n) (wmove((win),(y),(x)) == ERR ? ERR : waddnstr((win),(str),(n)))
++#define mvwaddstr(win,y,x,str) (wmove((win),(y),(x)) == ERR ? ERR : waddnstr((win),(str),-1))
++#define mvwdelch(win,y,x) (wmove((win),(y),(x)) == ERR ? ERR : wdelch(win))
++#define mvwchgat(win,y,x,n,a,c,o) (wmove((win),(y),(x)) == ERR ? ERR : wchgat((win),(n),(a),(c),(o)))
++#define mvwgetch(win,y,x) (wmove((win),(y),(x)) == ERR ? ERR : wgetch(win))
++#define mvwgetnstr(win,y,x,str,n) (wmove((win),(y),(x)) == ERR ? ERR : wgetnstr((win),(str),(n)))
++#define mvwgetstr(win,y,x,str) (wmove((win),(y),(x)) == ERR ? ERR : wgetstr((win),(str)))
++#define mvwhline(win,y,x,c,n) (wmove((win),(y),(x)) == ERR ? ERR : whline((win),(c),(n)))
++#define mvwinch(win,y,x) (wmove((win),(y),(x)) == ERR ? NCURSES_CAST(chtype, ERR) : winch(win))
++#define mvwinchnstr(win,y,x,s,n) (wmove((win),(y),(x)) == ERR ? ERR : winchnstr((win),(s),(n)))
++#define mvwinchstr(win,y,x,s) (wmove((win),(y),(x)) == ERR ? ERR : winchstr((win),(s)))
++#define mvwinnstr(win,y,x,s,n) (wmove((win),(y),(x)) == ERR ? ERR : winnstr((win),(s),(n)))
++#define mvwinsch(win,y,x,c) (wmove((win),(y),(x)) == ERR ? ERR : winsch((win),(c)))
++#define mvwinsnstr(win,y,x,s,n) (wmove((win),(y),(x)) == ERR ? ERR : winsnstr((win),(s),(n)))
++#define mvwinsstr(win,y,x,s) (wmove((win),(y),(x)) == ERR ? ERR : winsstr((win),(s)))
++#define mvwinstr(win,y,x,s) (wmove((win),(y),(x)) == ERR ? ERR : winstr((win),(s)))
++#define mvwvline(win,y,x,c,n) (wmove((win),(y),(x)) == ERR ? ERR : wvline((win),(c),(n)))
++
++#define mvaddch(y,x,ch) mvwaddch(stdscr,(y),(x),(ch))
++#define mvaddchnstr(y,x,str,n) mvwaddchnstr(stdscr,(y),(x),(str),(n))
++#define mvaddchstr(y,x,str) mvwaddchstr(stdscr,(y),(x),(str))
++#define mvaddnstr(y,x,str,n) mvwaddnstr(stdscr,(y),(x),(str),(n))
++#define mvaddstr(y,x,str) mvwaddstr(stdscr,(y),(x),(str))
++#define mvchgat(y,x,n,a,c,o) mvwchgat(stdscr,(y),(x),(n),(a),(c),(o))
++#define mvdelch(y,x) mvwdelch(stdscr,(y),(x))
++#define mvgetch(y,x) mvwgetch(stdscr,(y),(x))
++#define mvgetnstr(y,x,str,n) mvwgetnstr(stdscr,(y),(x),(str),(n))
++#define mvgetstr(y,x,str) mvwgetstr(stdscr,(y),(x),(str))
++#define mvhline(y,x,c,n) mvwhline(stdscr,(y),(x),(c),(n))
++#define mvinch(y,x) mvwinch(stdscr,(y),(x))
++#define mvinchnstr(y,x,s,n) mvwinchnstr(stdscr,(y),(x),(s),(n))
++#define mvinchstr(y,x,s) mvwinchstr(stdscr,(y),(x),(s))
++#define mvinnstr(y,x,s,n) mvwinnstr(stdscr,(y),(x),(s),(n))
++#define mvinsch(y,x,c) mvwinsch(stdscr,(y),(x),(c))
++#define mvinsnstr(y,x,s,n) mvwinsnstr(stdscr,(y),(x),(s),(n))
++#define mvinsstr(y,x,s) mvwinsstr(stdscr,(y),(x),(s))
++#define mvinstr(y,x,s) mvwinstr(stdscr,(y),(x),(s))
++#define mvvline(y,x,c,n) mvwvline(stdscr,(y),(x),(c),(n))
+
+ /*
+ * Some wide-character functions can be implemented without the extensions.
+@@ -1311,7 +1311,7 @@
+ * Export fallback function for use in C++ binding.
+ */
+ #if !@HAVE_VSSCANF@
+-#define vsscanf(a,b,c) _nc_vsscanf(a,b,c)
++#define vsscanf(a,b,c) _nc_vsscanf((a),(b),(c))
+ NCURSES_EXPORT(int) vsscanf(const char *, const char *, va_list);
+ #endif
+
+Index: include/curses.wide
+Prereq: 1.44
+--- ncurses-5.9-20120721+/include/curses.wide 2011-10-29 20:08:19.000000000 +0000
++++ ncurses-5.9-20120728/include/curses.wide 2012-07-28 18:10:02.000000000 +0000
+@@ -1,4 +1,4 @@
+-/* $Id: curses.wide,v 1.44 2011/10/29 20:08:19 tom Exp $ */
++/* $Id: curses.wide,v 1.45 2012/07/28 18:10:02 tom Exp $ */
+ /*
+ * vile:cmode:
+ * This file is part of ncurses, designed to be appended after curses.h.in
+@@ -10,7 +10,7 @@
+
+ extern NCURSES_EXPORT_VAR(cchar_t *) _nc_wacs;
+
+-#define NCURSES_WACS(c) (&_nc_wacs[(unsigned char)c])
++#define NCURSES_WACS(c) (&_nc_wacs[NCURSES_CAST(unsigned char,(c))])
+
+ #define WACS_BSSB NCURSES_WACS('l')
+ #define WACS_SSBB NCURSES_WACS('m')
+@@ -230,77 +230,77 @@
+ /*
+ * XSI curses macros for XPG4 conformance.
+ */
+-#define add_wch(c) wadd_wch(stdscr,c)
+-#define add_wchnstr(str,n) wadd_wchnstr(stdscr,str,n)
+-#define add_wchstr(str) wadd_wchstr(stdscr,str)
+-#define addnwstr(wstr,n) waddnwstr(stdscr,wstr,n)
+-#define addwstr(wstr) waddwstr(stdscr,wstr)
+-#define bkgrnd(c) wbkgrnd(stdscr,c)
+-#define bkgrndset(c) wbkgrndset(stdscr,c)
+-#define border_set(l,r,t,b,tl,tr,bl,br) wborder_set(stdscr,l,r,t,b,tl,tr,bl,br)
+-#define box_set(w,v,h) wborder_set(w,v,v,h,h,0,0,0,0)
+-#define echo_wchar(c) wecho_wchar(stdscr,c)
+-#define get_wch(c) wget_wch(stdscr,c)
+-#define get_wstr(t) wget_wstr(stdscr,t)
+-#define getbkgrnd(wch) wgetbkgrnd(stdscr,wch)
+-#define getn_wstr(t,n) wgetn_wstr(stdscr,t,n)
+-#define hline_set(c,n) whline_set(stdscr,c,n)
+-#define in_wch(c) win_wch(stdscr,c)
+-#define in_wchnstr(c,n) win_wchnstr(stdscr,c,n)
+-#define in_wchstr(c) win_wchstr(stdscr,c)
+-#define innwstr(c,n) winnwstr(stdscr,c,n)
+-#define ins_nwstr(t,n) wins_nwstr(stdscr,t,n)
+-#define ins_wch(c) wins_wch(stdscr,c)
+-#define ins_wstr(t) wins_wstr(stdscr,t)
+-#define inwstr(c) winwstr(stdscr,c)
+-#define vline_set(c,n) wvline_set(stdscr,c,n)
+-#define wadd_wchstr(win,str) wadd_wchnstr(win,str,-1)
+-#define waddwstr(win,wstr) waddnwstr(win,wstr,-1)
+-#define wget_wstr(w,t) wgetn_wstr(w,t,-1)
+-#define win_wchstr(w,c) win_wchnstr(w,c,-1)
+-#define wins_wstr(w,t) wins_nwstr(w,t,-1)
++#define add_wch(c) wadd_wch(stdscr,(c))
++#define add_wchnstr(str,n) wadd_wchnstr(stdscr,(str),(n))
++#define add_wchstr(str) wadd_wchstr(stdscr,(str))
++#define addnwstr(wstr,n) waddnwstr(stdscr,(wstr),(n))
++#define addwstr(wstr) waddwstr(stdscr,(wstr))
++#define bkgrnd(c) wbkgrnd(stdscr,(c))
++#define bkgrndset(c) wbkgrndset(stdscr,(c))
++#define border_set(l,r,t,b,tl,tr,bl,br) wborder_set(stdscr,(l),(r),(t),(b),tl,tr,bl,br)
++#define box_set(w,v,h) wborder_set((w),(v),(v),(h),(h),0,0,0,0)
++#define echo_wchar(c) wecho_wchar(stdscr,(c))
++#define get_wch(c) wget_wch(stdscr,(c))
++#define get_wstr(t) wget_wstr(stdscr,(t))
++#define getbkgrnd(wch) wgetbkgrnd(stdscr,(wch))
++#define getn_wstr(t,n) wgetn_wstr(stdscr,(t),(n))
++#define hline_set(c,n) whline_set(stdscr,(c),(n))
++#define in_wch(c) win_wch(stdscr,(c))
++#define in_wchnstr(c,n) win_wchnstr(stdscr,(c),(n))
++#define in_wchstr(c) win_wchstr(stdscr,(c))
++#define innwstr(c,n) winnwstr(stdscr,(c),(n))
++#define ins_nwstr(t,n) wins_nwstr(stdscr,(t),(n))
++#define ins_wch(c) wins_wch(stdscr,(c))
++#define ins_wstr(t) wins_wstr(stdscr,(t))
++#define inwstr(c) winwstr(stdscr,(c))
++#define vline_set(c,n) wvline_set(stdscr,(c),(n))
++#define wadd_wchstr(win,str) wadd_wchnstr((win),(str),-1)
++#define waddwstr(win,wstr) waddnwstr((win),(wstr),-1)
++#define wget_wstr(w,t) wgetn_wstr((w),(t),-1)
++#define win_wchstr(w,c) win_wchnstr((w),(c),-1)
++#define wins_wstr(w,t) wins_nwstr((w),(t),-1)
+
+ #if !NCURSES_OPAQUE
+ #define wgetbkgrnd(win,wch) ((win) ? (*(wch) = (win)->_bkgrnd) : *(wch), OK)
+ #endif
+
+-#define mvadd_wch(y,x,c) mvwadd_wch(stdscr,y,x,c)
+-#define mvadd_wchnstr(y,x,s,n) mvwadd_wchnstr(stdscr,y,x,s,n)
+-#define mvadd_wchstr(y,x,s) mvwadd_wchstr(stdscr,y,x,s)
+-#define mvaddnwstr(y,x,wstr,n) mvwaddnwstr(stdscr,y,x,wstr,n)
+-#define mvaddwstr(y,x,wstr) mvwaddwstr(stdscr,y,x,wstr)
+-#define mvget_wch(y,x,c) mvwget_wch(stdscr,y,x,c)
+-#define mvget_wstr(y,x,t) mvwget_wstr(stdscr,y,x,t)
+-#define mvgetn_wstr(y,x,t,n) mvwgetn_wstr(stdscr,y,x,t,n)
+-#define mvhline_set(y,x,c,n) mvwhline_set(stdscr,y,x,c,n)
+-#define mvin_wch(y,x,c) mvwin_wch(stdscr,y,x,c)
+-#define mvin_wchnstr(y,x,c,n) mvwin_wchnstr(stdscr,y,x,c,n)
+-#define mvin_wchstr(y,x,c) mvwin_wchstr(stdscr,y,x,c)
+-#define mvinnwstr(y,x,c,n) mvwinnwstr(stdscr,y,x,c,n)
+-#define mvins_nwstr(y,x,t,n) mvwins_nwstr(stdscr,y,x,t,n)
+-#define mvins_wch(y,x,c) mvwins_wch(stdscr,y,x,c)
+-#define mvins_wstr(y,x,t) mvwins_wstr(stdscr,y,x,t)
+-#define mvinwstr(y,x,c) mvwinwstr(stdscr,y,x,c)
+-#define mvvline_set(y,x,c,n) mvwvline_set(stdscr,y,x,c,n)
+-
+-#define mvwadd_wch(win,y,x,c) (wmove(win,y,x) == ERR ? ERR : wadd_wch(win,c))
+-#define mvwadd_wchnstr(win,y,x,s,n) (wmove(win,y,x) == ERR ? ERR : wadd_wchnstr(win,s,n))
+-#define mvwadd_wchstr(win,y,x,s) (wmove(win,y,x) == ERR ? ERR : wadd_wchstr(win,s))
+-#define mvwaddnwstr(win,y,x,wstr,n) (wmove(win,y,x) == ERR ? ERR : waddnwstr(win,wstr,n))
+-#define mvwaddwstr(win,y,x,wstr) (wmove(win,y,x) == ERR ? ERR : waddwstr(win,wstr))
+-#define mvwget_wch(win,y,x,c) (wmove(win,y,x) == ERR ? ERR : wget_wch(win,c))
+-#define mvwget_wstr(win,y,x,t) (wmove(win,y,x) == ERR ? ERR : wget_wstr(win,t))
+-#define mvwgetn_wstr(win,y,x,t,n) (wmove(win,y,x) == ERR ? ERR : wgetn_wstr(win,t,n))
+-#define mvwhline_set(win,y,x,c,n) (wmove(win,y,x) == ERR ? ERR : whline_set(win,c,n))
+-#define mvwin_wch(win,y,x,c) (wmove(win,y,x) == ERR ? ERR : win_wch(win,c))
+-#define mvwin_wchnstr(win,y,x,c,n) (wmove(win,y,x) == ERR ? ERR : win_wchnstr(win,c,n))
+-#define mvwin_wchstr(win,y,x,c) (wmove(win,y,x) == ERR ? ERR : win_wchstr(win,c))
+-#define mvwinnwstr(win,y,x,c,n) (wmove(win,y,x) == ERR ? ERR : winnwstr(win,c,n))
+-#define mvwins_nwstr(win,y,x,t,n) (wmove(win,y,x) == ERR ? ERR : wins_nwstr(win,t,n))
+-#define mvwins_wch(win,y,x,c) (wmove(win,y,x) == ERR ? ERR : wins_wch(win,c))
+-#define mvwins_wstr(win,y,x,t) (wmove(win,y,x) == ERR ? ERR : wins_wstr(win,t))
+-#define mvwinwstr(win,y,x,c) (wmove(win,y,x) == ERR ? ERR : winwstr(win,c))
+-#define mvwvline_set(win,y,x,c,n) (wmove(win,y,x) == ERR ? ERR : wvline_set(win,c,n))
++#define mvadd_wch(y,x,c) mvwadd_wch(stdscr,(y),(x),(c))
++#define mvadd_wchnstr(y,x,s,n) mvwadd_wchnstr(stdscr,(y),(x),(s),(n))
++#define mvadd_wchstr(y,x,s) mvwadd_wchstr(stdscr,(y),(x),(s))
++#define mvaddnwstr(y,x,wstr,n) mvwaddnwstr(stdscr,(y),(x),(wstr),(n))
++#define mvaddwstr(y,x,wstr) mvwaddwstr(stdscr,(y),(x),(wstr))
++#define mvget_wch(y,x,c) mvwget_wch(stdscr,(y),(x),(c))
++#define mvget_wstr(y,x,t) mvwget_wstr(stdscr,(y),(x),(t))
++#define mvgetn_wstr(y,x,t,n) mvwgetn_wstr(stdscr,(y),(x),(t),(n))
++#define mvhline_set(y,x,c,n) mvwhline_set(stdscr,(y),(x),(c),(n))
++#define mvin_wch(y,x,c) mvwin_wch(stdscr,(y),(x),(c))
++#define mvin_wchnstr(y,x,c,n) mvwin_wchnstr(stdscr,(y),(x),(c),(n))
++#define mvin_wchstr(y,x,c) mvwin_wchstr(stdscr,(y),(x),(c))
++#define mvinnwstr(y,x,c,n) mvwinnwstr(stdscr,(y),(x),(c),(n))
++#define mvins_nwstr(y,x,t,n) mvwins_nwstr(stdscr,(y),(x),(t),(n))
++#define mvins_wch(y,x,c) mvwins_wch(stdscr,(y),(x),(c))
++#define mvins_wstr(y,x,t) mvwins_wstr(stdscr,(y),(x),(t))
++#define mvinwstr(y,x,c) mvwinwstr(stdscr,(y),(x),(c))
++#define mvvline_set(y,x,c,n) mvwvline_set(stdscr,(y),(x),(c),(n))
++
++#define mvwadd_wch(win,y,x,c) (wmove(win,(y),(x)) == ERR ? ERR : wadd_wch((win),(c)))
++#define mvwadd_wchnstr(win,y,x,s,n) (wmove(win,(y),(x)) == ERR ? ERR : wadd_wchnstr((win),(s),(n)))
++#define mvwadd_wchstr(win,y,x,s) (wmove(win,(y),(x)) == ERR ? ERR : wadd_wchstr((win),(s)))
++#define mvwaddnwstr(win,y,x,wstr,n) (wmove(win,(y),(x)) == ERR ? ERR : waddnwstr((win),(wstr),(n)))
++#define mvwaddwstr(win,y,x,wstr) (wmove(win,(y),(x)) == ERR ? ERR : waddwstr((win),(wstr)))
++#define mvwget_wch(win,y,x,c) (wmove(win,(y),(x)) == ERR ? ERR : wget_wch((win),(c)))
++#define mvwget_wstr(win,y,x,t) (wmove(win,(y),(x)) == ERR ? ERR : wget_wstr((win),(t)))
++#define mvwgetn_wstr(win,y,x,t,n) (wmove(win,(y),(x)) == ERR ? ERR : wgetn_wstr((win),(t),(n)))
++#define mvwhline_set(win,y,x,c,n) (wmove(win,(y),(x)) == ERR ? ERR : whline_set((win),(c),(n)))
++#define mvwin_wch(win,y,x,c) (wmove(win,(y),(x)) == ERR ? ERR : win_wch((win),(c)))
++#define mvwin_wchnstr(win,y,x,c,n) (wmove(win,(y),(x)) == ERR ? ERR : win_wchnstr((win),(c),(n)))
++#define mvwin_wchstr(win,y,x,c) (wmove(win,(y),(x)) == ERR ? ERR : win_wchstr((win),(c)))
++#define mvwinnwstr(win,y,x,c,n) (wmove(win,(y),(x)) == ERR ? ERR : winnwstr((win),(c),(n)))
++#define mvwins_nwstr(win,y,x,t,n) (wmove(win,(y),(x)) == ERR ? ERR : wins_nwstr((win),(t),(n)))
++#define mvwins_wch(win,y,x,c) (wmove(win,(y),(x)) == ERR ? ERR : wins_wch((win),(c)))
++#define mvwins_wstr(win,y,x,t) (wmove(win,(y),(x)) == ERR ? ERR : wins_wstr((win),(t)))
++#define mvwinwstr(win,y,x,c) (wmove(win,(y),(x)) == ERR ? ERR : winwstr((win),(c)))
++#define mvwvline_set(win,y,x,c,n) (wmove(win,(y),(x)) == ERR ? ERR : wvline_set((win),(c),(n)))
+
+ #endif /* NCURSES_NOMACROS */
+
+Index: include/headers
+Prereq: 1.11
+--- ncurses-5.9-20120721+/include/headers 2012-07-07 19:58:24.000000000 +0000
++++ ncurses-5.9-20120728/include/headers 2012-07-28 22:41:34.000000000 +0000
+@@ -1,4 +1,4 @@
+-# $Id: headers,v 1.11 2012/07/07 19:58:24 tom Exp $
++# $Id: headers,v 1.12 2012/07/28 22:41:34 Roumen.Petrov Exp $
+ ##############################################################################
+ # Copyright (c) 1998-2009,2012 Free Software Foundation, Inc. #
+ # #
+@@ -46,6 +46,6 @@
+
+ # Porting
+ @ port_win32con
+-ncurses_mingw.h
++$(srcdir)/ncurses_mingw.h
+
+ # vile:makemode
+Index: misc/terminfo.src
+--- ncurses-5.9-20120721+/misc/terminfo.src 2012-06-02 20:15:40.000000000 +0000
++++ ncurses-5.9-20120728/misc/terminfo.src 2012-07-28 19:10:53.000000000 +0000
+@@ -6,8 +6,8 @@
+ # Report bugs and new terminal descriptions to
+ # bug-ncurses@gnu.org
+ #
+-# $Revision: 1.460 $
+-# $Date: 2012/06/02 20:15:40 $
++# $Revision: 1.464 $
++# $Date: 2012/07/28 19:10:53 $
+ #
+ # The original header is preserved below for reference. It is noted that there
+ # is a "newer" version which differs in some cosmetic details (but actually
+@@ -321,7 +321,7 @@
+ # DEL and ^C are hardcoded to act as kill characters.
+ # ^D acts as a line break (just like newline).
+ # It also interprets
+-# \033];xxx\007
++# \033];xxx\007
+ # for compatibility with xterm -TD
+ 9term|Plan9 terminal emulator for X,
+ am,
+@@ -959,6 +959,7 @@
+ sgr0=\E[m\017, smacs=^N, use=linux2.2,
+
+ # The 3.0 kernel adds support for clearing scrollback buffer (capability E3).
++# It is the same as xterm's erase-saved-lines feature.
+ linux3.0|linux 3.0 kernels,
+ E3=\E[3;J, use=linux2.6,
+
+@@ -2982,7 +2983,8 @@
+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;,
+ sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E[?47h,
+ smir=\E[4h, smpch=\E[11m, smso=\E[7m, smul=\E[4m,
+- tbc=\E[3g, vpa=\E[%i%p1%dd, use=vt102+enq, use=xterm+sl,
++ tbc=\E[3g, vpa=\E[%i%p1%dd, E3=\E[3;J, use=vt102+enq,
++ use=xterm+sl,
+ vt100-putty|Reset PuTTY to pure vt100,
+ rs2=\E<\E["p\Ec\E[?3l\E]R\E[40"p\E[61"p\E[50;1;2"p,
+ use=vt100,
+@@ -3237,7 +3239,7 @@
+ # added khome/kend, hts based on the R6 xterm code - TD
+ # (khome/kend do not actually work in X11R5 or X11R6, but many people use this
+ # for compatibility with other emulators).
+-xterm-r6|xterm-old|xterm X11R6 version,
++xterm-r6|xterm X11R6 version,
+ OTbs, am, km, mir, msgr, xenl,
+ cols#80, it#8, lines#24,
+ acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
+@@ -3263,6 +3265,8 @@
+ sgr0=\E[m, smacs=^N, smcup=\E7\E[?47h, smir=\E[4h,
+ smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
+ use=vt100+enq,
++xterm-old|antique xterm version,
++ use=xterm-r6,
+ # This is the base xterm entry for the xterm supplied with XFree86 3.2 & up.
+ # The name has been changed and some aliases have been removed.
+ xterm-xf86-v32|xterm terminal emulator (XFree86 3.2 Window System),
+@@ -3554,8 +3558,8 @@
+ sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m,
+ sgr0=\E(B\E[m, smacs=\E(0, smam=\E[?7h, smcup=\E[?1049h,
+ smir=\E[4h, smkx=\E[?1h\E=, smm=\E[?1034h, smso=\E[7m,
+- smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd, use=ansi+pp,
+- use=xterm+kbs, use=vt100+enq,
++ smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd, E3=\E[3;J,
++ use=ansi+pp, use=xterm+kbs, use=vt100+enq,
+
+ # From: David J. MacKenzie , 14 Nov 1997
+ # In retrospect, something like xterm-r6 was intended here -TD
+@@ -3625,11 +3629,11 @@
+ # Ms modifies the selection/clipboard. Its parameters are
+ # p1 = the storage unit (clipboard, selection or cut buffer)
+ # p2 = the base64-encoded clipboard content.
+-#
++#
+ # Ss is used to set the cursor style as described by the DECSCUSR
+ # function to a block or underline.
+ # Se resets the cursor style to the terminal power-on default.
+-#
++#
+ # Cs and Cr set and reset the cursor colour.
+ xterm+tmux|advanced xterm features used in tmux,
+ Cr=\E]112\007, Cs=\E]12;%p1%s\007,
+@@ -3739,7 +3743,7 @@
+ use=xterm,
+
+ xterm-24|vs100|xterms|xterm terminal emulator (X Window System),
+- lines#24, use=xterm,
++ lines#24, use=xterm-old,
+
+ # This is xterm for ncurses.
+ xterm|xterm terminal emulator (X Window System),
+@@ -3801,8 +3805,8 @@
+ #
+ # xterm with bold instead of underline
+ xterm-bold|xterm terminal emulator (X11R6 Window System) standout w/bold,
+- sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;1%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m,
+- smso=\E[7m, smul=\E[1m, use=xterm,
++ sgr=%?%p9%t\016%e\017%;B\E[0%?%p6%t;1%;%?%p2%t;1%;%?%p1%p3%|%t;7%;m,
++ smso=\E[7m, smul=\E[1m, use=xterm-old,
+
+ # See the note on ICH/ICH1 VERSUS RMIR/SMIR near the end of file
+ xterm-nic|xterm with ich/ich1 suppressed for non-curses programs,
+@@ -5060,7 +5064,7 @@
+ bce@, bw,
+ invis@, kIC@, kNXT@, kPRV@, meml@, memu@,
+ sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m,
+- use=screen+fkeys, use=xterm-new,
++ E3@, use=screen+fkeys, use=xterm-new,
+ # xterm-r6 does not really support khome/kend unless it is propped up by
+ # the translations resource.
+ screen.xterm-r6|screen customized for X11R6 xterm,
+@@ -16077,7 +16081,7 @@
+ # Manufactured in the early/mid eighties, behaves almost the same as a
+ # Televideo 950. Take a 950, change its cabinet for a more 80s-ish one (but
+ # keep the same keyboard layout), add an optional 25-line mode, replace the DIP
+-# switches with a menu and remove the "lock line" feature (ESC ! 1 and ESC !
++# switches with a menu and remove the "lock line" feature (ESC ! 1 and ESC !
+ # 2), here is the NDR 9500. Even the line-lock, albeit disabled, is
+ # recognized: if you type in "ESC !", the next (third) character is not
+ # echoed, showing that the terminal was actually waiting for a parameter!
+@@ -21415,7 +21419,8 @@
+ # gsbom/grbom are used to enable/disable real bold (not intensity bright) mode.
+ # This was implemented for the Hurd.
+ # E3 clears the terminal's scrollback buffer. This was implemented in the
+-# Linux 3.0 kernel as a security feature.
++# Linux 3.0 kernel as a security feature. It matches a feature which was
++# added in xterm patch #107.
+ # U8 is a numeric capability which denotes a terminal emulator which does not
+ # support VT100 SI/SO when processing UTF-8 encoding. Set this to a nonzero
+ # value to enable it.
+@@ -22887,4 +22892,11 @@
+ # * add dl1/il1 to some entries based on dl/il values -TD
+ # * add dl to simpleterm -TD
+ #
++# 2012-06-10
++# * modify some older xterm entries to align with xterm source -TD
++# * separate "xterm-old" alias from "xterm-r6" -TD
++#
++# 2012-07-28
++# * add E3 to xterm-basic and putty -TD
++#
+ ######## SHANTIH! SHANTIH! SHANTIH!
+Index: ncurses/tinfo/tinfo_driver.c
+Prereq: 1.23
+--- ncurses-5.9-20120721+/ncurses/tinfo/tinfo_driver.c 2012-07-22 00:45:34.000000000 +0000
++++ ncurses-5.9-20120728/ncurses/tinfo/tinfo_driver.c 2012-07-28 20:12:11.000000000 +0000
+@@ -50,7 +50,7 @@
+ # endif
+ #endif
+
+-MODULE_ID("$Id: tinfo_driver.c,v 1.23 2012/07/22 00:45:34 tom Exp $")
++MODULE_ID("$Id: tinfo_driver.c,v 1.24 2012/07/28 20:12:11 tom Exp $")
+
+ /*
+ * SCO defines TIOCGSIZE and the corresponding struct. Other systems (SunOS,
+@@ -634,13 +634,11 @@
+ static void
+ drv_init(TERMINAL_CONTROL_BLOCK * TCB)
+ {
+- SCREEN *sp;
+ TERMINAL *trm;
+
+ AssertTCB();
+
+ trm = (TERMINAL *) TCB;
+- sp = TCB->csp;
+
+ TCB->info.initcolor = VALID_STRING(initialize_color);
+ TCB->info.canchange = can_change;
+Index: package/debian/changelog
+--- ncurses-5.9-20120721+/package/debian/changelog 2012-07-21 23:33:11.000000000 +0000
++++ ncurses-5.9-20120728/package/debian/changelog 2012-07-28 23:51:10.000000000 +0000
+@@ -1,8 +1,8 @@
+-ncurses6 (5.9-20120721) unstable; urgency=low
++ncurses6 (5.9-20120728) unstable; urgency=low
+
+ * latest weekly patch
+
+- -- Thomas E. Dickey Sat, 21 Jul 2012 19:33:07 -0400
++ -- Thomas E. Dickey Sat, 28 Jul 2012 19:51:08 -0400
+
+ ncurses6 (5.9-20120608) unstable; urgency=low
+
+Index: package/ncurses.spec
+--- ncurses-5.9-20120721+/package/ncurses.spec 2012-07-21 23:32:52.000000000 +0000
++++ ncurses-5.9-20120728/package/ncurses.spec 2012-07-28 23:50:37.000000000 +0000
+@@ -1,7 +1,7 @@
+ Summary: shared libraries for terminal handling
+ Name: ncurses6
+ Release: 5.9
+-Version: 20120721
++Version: 20120728
+ License: X11
+ Group: Development/Libraries
+ Source: ncurses-%{release}-%{version}.tgz
++++++ ncurses-5.9.dif ++++++
--- /var/tmp/diff_new_pack.AFKDBJ/_old 2012-07-31 13:58:57.000000000 +0200
+++ /var/tmp/diff_new_pack.AFKDBJ/_new 2012-07-31 13:58:57.000000000 +0200
@@ -129,7 +129,7 @@
done
--- configure.in
+++ configure.in 2012-01-30 16:31:47.000000000 +0000
-@@ -1754,6 +1754,7 @@ if test "$with_termlib" != no ; then
+@@ -1756,6 +1756,7 @@ if test "$with_termlib" != no ; then
TINFO_LDFLAGS="-L${LIB_DIR}"
SHLIB_LIST="$SHLIB_LIST -l${TINFO_LIB_SUFFIX}"
fi
@@ -266,7 +266,7 @@
;;
esac
done
-@@ -20032,6 +20036,7 @@ if test "$with_termlib" != no ; then
+@@ -20034,6 +20038,7 @@ if test "$with_termlib" != no ; then
TINFO_LDFLAGS="-L${LIB_DIR}"
SHLIB_LIST="$SHLIB_LIST -l${TINFO_LIB_SUFFIX}"
fi
@@ -350,7 +350,7 @@
fi
if test "${includedir}" != /usr/include ; then
--- misc/terminfo.src
-+++ misc/terminfo.src 2012-06-26 10:48:22.676510628 +0000
++++ misc/terminfo.src 2012-07-31 09:22:44.388510253 +0000
@@ -301,7 +301,9 @@ dumb|80-column dumb tty,
am,
cols#80,
@@ -379,7 +379,7 @@
# Linux 2.6.x has a fix for SI/SO to work with UTF-8 encoding added here:
# http://lkml.indiana.edu/hypermail/linux/kernel/0602.2/0868.html
-@@ -2471,6 +2479,7 @@ vt132|DEC vt132,
+@@ -2472,6 +2480,7 @@ vt132|DEC vt132,
# at the top of the keyboard. The "DO" key is used as F10 to avoid conflict
# with the key marked (ESC) on the vt220. See vt220d for an alternate mapping.
# PF1--PF4 are used as F1--F4.
@@ -387,7 +387,7 @@
#
# added msgr -TD
vt220-old|vt200-old|DEC VT220 in vt100 emulation mode,
-@@ -2481,7 +2490,7 @@ vt220-old|vt200-old|DEC VT220 in vt100 e
+@@ -2482,7 +2491,7 @@ vt220-old|vt200-old|DEC VT220 in vt100 e
bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, civis=\E[?25l,
clear=\E[H\E[2J$<50>, cnorm=\E[?25h, cr=^M,
csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=\E[B, cuf1=\E[C,
@@ -396,7 +396,7 @@
dl1=\E[M, ed=\E[J$<50>, el=\E[K$<3>, home=\E[H, ht=^I,
if=/usr/share/tabset/vt100, il1=\E[L, ind=\ED$<20/>,
is2=\E[1;24r\E[24;1H, kbs=^H, kcub1=\E[D, kcud1=\E[B,
-@@ -2638,6 +2647,7 @@ vt320nam|v320n|DEC VT320 in vt100 emul.
+@@ -2639,6 +2648,7 @@ vt320nam|v320n|DEC VT320 in vt100 emul.
# to SMASH the 1k-barrier...
# From: Adam Thompson Sept 10 1995
# (vt320: uncommented <fsl> --esr)
@@ -404,7 +404,7 @@
vt320|vt300|dec vt320 7 bit terminal,
am, hs, mir, msgr, xenl,
cols#80, lines#24, wsl#80,
-@@ -2647,7 +2657,7 @@ vt320|vt300|dec vt320 7 bit terminal,
+@@ -2648,7 +2658,7 @@ vt320|vt300|dec vt320 7 bit terminal,
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
@@ -413,7 +413,7 @@
ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, home=\E[H, ht=^I,
hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\ED,
is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H,
-@@ -3058,13 +3068,14 @@ putty-sco|putty with SCO function keys,
+@@ -3060,13 +3070,14 @@ putty-sco|putty with SCO function keys,
# retrieving the window title, and for setting the window size (i.e., using
# "resize -s"), though it does not pass SIGWINCH to the application if the
# user resizes the window with the mouse.
@@ -429,15 +429,15 @@
dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K,
flash=\E[?5h\E[?5l$<200/>, hpa=\E[%i%p1%dG,
il=\E[%p1%dL, il1=\E[L, kdch1=\E[3~, kf1=\E[11~,
-@@ -3265,6 +3276,7 @@ xterm-r6|xterm-old|xterm X11R6 version,
- use=vt100+enq,
+@@ -3269,6 +3280,7 @@ xterm-old|antique xterm version,
+ use=xterm-r6,
# This is the base xterm entry for the xterm supplied with XFree86 3.2 & up.
# The name has been changed and some aliases have been removed.
+# (cvvis added by werner)
xterm-xf86-v32|xterm terminal emulator (XFree86 3.2 Window System),
OTbs, am, bce, km, mir, msgr, xenl, XT,
cols#80, it#8, lines#24, ncv@,
-@@ -3274,7 +3286,7 @@ xterm-xf86-v32|xterm terminal emulator (
+@@ -3278,7 +3290,7 @@ xterm-xf86-v32|xterm terminal emulator (
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
@@ -446,16 +446,16 @@
ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E(B\E)0,
flash=\E[?5h$<100/>\E[?5l, home=\E[H, hpa=\E[%i%p1%dG,
ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL,
-@@ -3741,8 +3753,26 @@ xterm-noapp|xterm with cursor keys in no
+@@ -3745,8 +3757,26 @@ xterm-noapp|xterm with cursor keys in no
xterm-24|vs100|xterms|xterm terminal emulator (X Window System),
- lines#24, use=xterm,
+ lines#24, use=xterm-old,
+# For SuSE Linux: Werner Fink
+# Note that the modern xterm does not use escape sequences
+# for the numbers on the numpad keys in case of switched
+# into application mode and with numlock enabled.
+# To test this, use `tput smkx' and `Ctrl-V + key stroke'
-+xterm-suse|xterm terminal emulator (X11R6.8.2 Window System with SuSE LINUX),
++xterm-suse|xterm terminal emulator (X.Org X11R7.7 Window System with SuSE LINUX),
+ kbs=\177, kdch1=\E[3~,
+ kDIV=\EOo, kMUL=\EOj, kMIN=\EOm, kPLS=\EOk,
+ kfnd=\E[1~, kslt=\E[4~,
@@ -473,7 +473,7 @@
use=xterm-new,
# This entry assumes that xterm's handling of VT100 SI/SO is disabled by
-@@ -3948,7 +3978,7 @@ xterms-sun|small (80x24) xterm with sunF
+@@ -3952,7 +3982,7 @@ xterms-sun|small (80x24) xterm with sunF
#### GNOME (VTE)
# this describes the alpha-version of Gnome terminal shipped with Redhat 6.0
@@ -482,7 +482,7 @@
bce,
kdch1=\177, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS,
use=xterm-color,
-@@ -4096,10 +4126,14 @@ mgt|Multi GNOME Terminal,
+@@ -4100,10 +4130,14 @@ mgt|Multi GNOME Terminal,
#### KDE
# This is kvt 0-18.7, shipped with Redhat 6.0 (though whether it supports bce
# or not is debatable).
@@ -498,7 +498,7 @@
# Konsole 1.0.1
# (formerly known as kvt)
#
-@@ -4214,14 +4248,14 @@ konsole-256color|KDE console window with
+@@ -4218,14 +4252,14 @@ konsole-256color|KDE console window with
mlterm|multi lingual terminal emulator,
am, eslok, km, mc5i, mir, msgr, npc, xenl, XT,
colors#8, cols#80, it#8, lines#24, pairs#64,
@@ -516,7 +516,7 @@
home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@,
ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dS,
is2=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>,
-@@ -4276,6 +4310,7 @@ mlterm-256color|mlterm 3.0 with xterm 25
+@@ -4280,6 +4314,7 @@ mlterm-256color|mlterm 3.0 with xterm 25
# rxvt is normally configured to look for "xterm" or "xterm-color" as $TERM.
# Since rxvt is not really compatible with xterm, it should be configured as
# "rxvt" or "rxvt-color".
@@ -524,7 +524,7 @@
#
# removed dch/dch1 because they are inconsistent with bce/ech -TD
# remove km as per tack test -TD
-@@ -4287,13 +4322,14 @@ rxvt-basic|rxvt terminal base (X Window
+@@ -4291,13 +4326,14 @@ rxvt-basic|rxvt terminal base (X Window
clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M,
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
@@ -542,7 +542,7 @@
rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmkx=\E>, rmso=\E[27m,
rmul=\E[24m,
rs1=\E>\E[1;3;4;5;6l\E[?7h\E[m\E[r\E[2J\E[H,
-@@ -4302,7 +4338,7 @@ rxvt-basic|rxvt terminal base (X Window
+@@ -4306,7 +4342,7 @@ rxvt-basic|rxvt terminal base (X Window
sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;,
sgr0=\E[0m\017, smacs=^N, smcup=\E7\E[?47h, smir=\E[4h,
smkx=\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, use=vt100+enq,
@@ -551,7 +551,7 @@
# Key Codes from rxvt reference:
#
# Note: Shift + F1-F10 generates F11-F20
-@@ -4385,8 +4421,8 @@ rxvt-basic|rxvt terminal base (X Window
+@@ -4389,8 +4425,8 @@ rxvt-basic|rxvt terminal base (X Window
# Removed kDN6, etc (control+shift) since rxvt does not implement this -TD
rxvt+pcfkeys|fragment for PC-style fkeys,
kDC=\E[3$, kEND=\E[8$, kHOM=\E[7$, kIC=\E[2$, kLFT=\E[d,
@@ -562,7 +562,7 @@
kend=\E[8~, kf1=\E[11~, kf10=\E[21~, kf11=\E[23~,
kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~,
kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~,
-@@ -4424,6 +4460,39 @@ rxvt-cygwin-native|rxvt terminal emulato
+@@ -4428,6 +4464,39 @@ rxvt-cygwin-native|rxvt terminal emulato
acsc=+\257\,\256-\^0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330~\376,
use=rxvt-cygwin,
@@ -602,7 +602,7 @@
# This variant is supposed to work with rxvt 2.7.7 when compiled with
# NO_BRIGHTCOLOR defined. rxvt needs more work...
rxvt-16color|xterm with 16 colors like aixterm,
-@@ -4453,7 +4522,7 @@ mrxvt-256color|multitabbed rxvt with 256
+@@ -4457,7 +4526,7 @@ mrxvt-256color|multitabbed rxvt with 256
# Eterm 0.9.3
#
# removed kf0 which conflicts with kf10 -TD
@@ -611,7 +611,7 @@
# Eterm does not implement control/shift cursor keys such as kDN6, or kPRV/kNXT
# but does otherwise follow the rxvt+pcfkeys model -TD
# remove nonworking flash -TD
-@@ -4467,13 +4536,13 @@ Eterm|Eterm-color|Eterm with xterm-style
+@@ -4471,13 +4540,13 @@ Eterm|Eterm-color|Eterm with xterm-style
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
@@ -627,7 +627,7 @@
kc1=\E[8~, kc3=\E[6~, kent=\EOM, khlp=\E[28~, kmous=\E[M,
mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O,
rmam=\E[?7l, rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmkx=,
-@@ -4902,7 +4971,7 @@ pty|4bsd pseudo teletype,
+@@ -4906,7 +4975,7 @@ pty|4bsd pseudo teletype,
smso=\Ea$, smul=\Ea!, use=cbunix,
# The codes supported by the term.el terminal emulation in GNU Emacs 19.30
@@ -636,7 +636,7 @@
am, mir, xenl,
cols#80, lines#24,
bel=^G, bold=\E[1m, clear=\E[H\E[J, cr=^M,
-@@ -4915,6 +4984,13 @@ eterm|gnu emacs term.el terminal emulati
+@@ -4919,6 +4988,13 @@ eterm|gnu emacs term.el terminal emulati
rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmso=\E[m, rmul=\E[m,
sgr0=\E[m, smcup=\E7\E[?47h, smir=\E[4h, smso=\E[7m,
smul=\E[4m,
@@ -650,7 +650,7 @@
# The codes supported by the term.el terminal emulation in GNU Emacs 22.2
eterm-color|Emacs term.el terminal emulator term-protocol-version 0.96,
-@@ -4963,7 +5039,7 @@ screen|VT 100/ANSI X3.64 virtual termina
+@@ -4967,7 +5043,7 @@ screen|VT 100/ANSI X3.64 virtual termina
cvvis=\E[34l, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM,
dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E(B\E)0,
flash=\Eg, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@,
@@ -659,7 +659,7 @@
kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
kdch1=\E[3~, kend=\E[4~, kf1=\EOP, kf10=\E[21~,
kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, kf3=\EOR, kf4=\EOS,
-@@ -5142,7 +5218,7 @@ screen2|old VT 100/ANSI X3.64 virtual te
+@@ -5146,7 +5222,7 @@ screen2|old VT 100/ANSI X3.64 virtual te
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J,
el=\E[K, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=, il=\E[%p1%dL,
@@ -668,7 +668,7 @@
kcuu1=\EA, kf0=\E~, kf1=\ES, kf2=\ET, kf3=\EU, kf4=\EV,
kf5=\EW, kf6=\EP, kf7=\EQ, kf8=\ER, kf9=\E0I, khome=\EH,
nel=^M^J, rc=\E8, ri=\EM, rmir=\E[4l, rmso=\E[23m,
-@@ -6866,7 +6942,7 @@ hp700-wy|HP700/41 emulating wyse30,
+@@ -6870,7 +6946,7 @@ hp700-wy|HP700/41 emulating wyse30,
ri=\Ej, rmir=\Er, rmso=\EG0$<10/>, rmul=\EG0$<10/>,
sgr0=\EG0$<10/>, smir=\Eq, smso=\EG4$<10/>,
smul=\EG8$<10/>, tbc=\E0, vpa=\E[%p1%{32}%+%c,
@@ -677,7 +677,7 @@
am, da, db, xhp,
cols#80, lh#2, lines#24, lm#0, lw#8, nlab#8,
acsc=0cjgktlrmfn/q\,t5u6v8w7x., bel=^G, blink=\E&dA,
-@@ -10000,6 +10076,7 @@ msk22714|mskermit22714|UCB MS-DOS Kermit
+@@ -10004,6 +10080,7 @@ msk22714|mskermit22714|UCB MS-DOS Kermit
# at support for the VT320 itself.
# Please send changes with explanations to bug-gnu-emacs@prep.ai.mit.edu.
# (vt320-k3: I added <rmam>/<smam> based on the init string -- esr)
@@ -685,7 +685,7 @@
vt320-k3|MS-Kermit 3.00's vt320 emulation,
am, eslok, hs, km, mir, msgr, xenl,
cols#80, it#8, lines#49, pb#9600, vt#3,
-@@ -10009,7 +10086,7 @@ vt320-k3|MS-Kermit 3.00's vt320 emulatio
+@@ -10013,7 +10090,7 @@ vt320-k3|MS-Kermit 3.00's vt320 emulatio
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
@@ -694,7 +694,7 @@
dsl=\E[0$~, ech=\E[%p1%dX, ed=\E[J, el=\E[K,
flash=\E[?5h\E[?5l\E[?5h\E[?5l\E[?5h\E[?5l,
fsl=\E[0$}, home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH,
-@@ -14285,7 +14362,7 @@ ibm3101|i3101|IBM 3101-10,
+@@ -14289,7 +14366,7 @@ ibm3101|i3101|IBM 3101-10,
cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ,
el=\EI, home=\EH, hts=\E0, ind=^J, kcub1=\ED, kcud1=\EB,
kcuf1=\EC, kcuu1=\EA, nel=^M^J, tbc=\EH,
@@ -703,7 +703,7 @@
is2=\E S, rmacs=\E>B, rmcup=\E>B, rs2=\E S, s0ds=\E>B,
sgr=\E4%{64}%?%p1%t%{65}%|%;%?%p2%t%{66}%|%;%?%p3%t%{65}%|%;%?%p4%t%{68}%|%;%?%p5%t%{64}%|%;%?%p6%t%{72}%|%;%?%p7%t%{80}%|%;%c%?%p9%t\E>A%e\E>B%;,
sgr0=\E4@\E>B, smacs=\E>A, smcup=\E>B, use=ibm3162,
-@@ -14515,7 +14592,7 @@ lft|lft-pc850|LFT-PC850|IBM LFT PC850 De
+@@ -14519,7 +14596,7 @@ lft|lft-pc850|LFT-PC850|IBM LFT PC850 De
tbc=\E[3g,
# "Megapel" refers to the display adapter, which was used with the IBM RT
# aka IBM 6150.
@@ -725,7 +725,7 @@
sh -e $(base)/MKlib_gen.sh "$(CPP) $(CPPFLAGS)" "$(AWK)" generated <../include/curses.h >$@
--- ncurses/curses.priv.h
+++ ncurses/curses.priv.h 2006-05-18 14:07:15.000000000 +0000
-@@ -1948,6 +1948,8 @@ extern NCURSES_EXPORT(char *) _nc_trace_
+@@ -1952,6 +1952,8 @@ extern NCURSES_EXPORT(char *) _nc_trace_
extern NCURSES_EXPORT(char *) _nc_tracechar (SCREEN *, int);
extern NCURSES_EXPORT(char *) _nc_tracemouse (SCREEN *, MEVENT const *);
extern NCURSES_EXPORT(int) _nc_access (const char *, int);
@@ -826,7 +826,7 @@
{
--- ncurses/tinfo/lib_setup.c
+++ ncurses/tinfo/lib_setup.c 2011-02-28 13:40:42.000000000 +0000
-@@ -538,6 +538,9 @@ _nc_locale_breaks_acs(TERMINAL * termp)
+@@ -582,6 +582,9 @@ _nc_locale_breaks_acs(TERMINAL * termp)
} else if ((value = tigetnum("U8")) >= 0) {
result = value; /* use extension feature */
} else if ((env = getenv("TERM")) != 0) {
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org