SHA256
1
0
forked from pool/ncurses
ncurses/ncurses-5.6.dif

927 lines
33 KiB
Plaintext
Raw Blame History

--- .pkgextract
+++ .pkgextract 2006-05-18 16:07:14.000000000 +0200
@@ -0,0 +1,11 @@
+rm -fr tack
+rm -f Ada95/src/terminal_interface-curses.adb
+rm -f mkinstalldirs
+tar Oxfj ../ncurses-5.6-20080804-patch.tar.bz2 | patch -p1 -s
+tar xfj ../tack-1.06.tar.bz
+patch -p0 -s --suffix=.va < ../ncurses-5.3-printw.dif
+patch -p0 -s --suffix=.pt < ../ncurses-5.6-pthread.dif
+patch -p0 -s --suffix=.ov < ../ncurses-5.6-overwrite.dif
+patch -p0 -s --suffix=.hs < ../ncurses-5.6-hash.dif
+patch -p0 -s --suffix=.tack < ../ncurses-5.6-tack.dif
+patch -p0 -s --suffix=.gpm < ../ncurses-5.6-gpm.dif
--- aclocal.m4
+++ aclocal.m4 2008-04-08 17:08:00.277340000 +0200
@@ -391,7 +391,7 @@ AC_MSG_CHECKING([for size of bool])
AC_CACHE_VAL(cf_cv_type_of_bool,[
rm -f cf_test.out
AC_TRY_RUN([
-#include <stdlib.h>
+//#include <stdlib.h> // conflict with exit declaration
#include <stdio.h>
#if defined(__cplusplus)
@@ -3088,12 +3088,15 @@ cat >>$cf_edit_man <<CF_EOF
echo '? missing rename for '\$cf_source
cf_target="\$cf_source"
fi
- cf_target="\$cf_subdir\${section}/\${cf_target}"
-
CF_EOF
fi
cat >>$cf_edit_man <<CF_EOF
+for t in \$cf_target; do
+ t="\$cf_subdir\${section}/\${t}"
+CF_EOF
+
+cat >>$cf_edit_man <<CF_EOF
sed -f $cf_man_alias \\
CF_EOF
@@ -3103,7 +3106,7 @@ cat >>$cf_edit_man <<CF_EOF
CF_EOF
else
cat >>$cf_edit_man <<CF_EOF
- < \$i >\$TMP
+ < \$i | sed -f $srcdir/edit_man.sed >\$TMP
CF_EOF
fi
@@ -3136,7 +3139,7 @@ cat >>$cf_edit_man <<CF_EOF
mv \$TMP.$cf_so_strip \$TMP
fi
fi
- cf_target="\$cf_target.$cf_so_strip"
+ t="\$t.$cf_so_strip"
CF_EOF
fi
@@ -3145,23 +3148,23 @@ case "$MANPAGE_FORMAT" in #(vi
cat >>$cf_edit_man <<CF_EOF
if test \$form = format ; then
# BSDI installs only .0 suffixes in the cat directories
- cf_target="\`echo \$cf_target|sed -e 's/\.[[1-9]]\+[[a-z]]*/.0/'\`"
+ t="\`echo \$t|sed -e 's/\.[[1-9]]\+[[a-z]]*/.0/'\`"
fi
CF_EOF
;;
esac
cat >>$cf_edit_man <<CF_EOF
- suffix=\`basename \$cf_target | sed -e 's%^[[^.]]*%%'\`
+ suffix=\`basename \$t | sed -e 's%^[[^.]]*%%'\`
if test \$verb = installing ; then
- echo \$verb \$cf_target
- \$INSTALL_DATA \$TMP \$cf_target
+ echo \$verb \$t
+ \$INSTALL_DATA \$TMP \$t
test -d \$cf_subdir\${section} &&
test -n "\$aliases" && (
cd \$cf_subdir\${section} && (
- cf_source=\`echo \$cf_target |sed -e 's%^.*/\([[^/]][[^/]]*/[[^/]][[^/]]*$\)%\1%'\`
+ cf_source=\`echo \$t |sed -e 's%^.*/\([[^/]][[^/]]*/[[^/]][[^/]]*$\)%\1%'\`
test -n "$cf_so_strip" && cf_source=\`echo \$cf_source |sed -e 's%\.$cf_so_strip\$%%'\`
- cf_target=\`basename \$cf_target\`
+ t=\`basename \$t\`
for cf_alias in \$aliases
do
if test \$section = 1 ; then
@@ -3170,15 +3173,15 @@ cat >>$cf_edit_man <<CF_EOF
if test "$MANPAGE_SYMLINKS" = yes ; then
if test -f \$cf_alias\${suffix} ; then
- if ( cmp -s \$cf_target \$cf_alias\${suffix} )
+ if ( cmp -s \$t \$cf_alias\${suffix} )
then
continue
fi
fi
echo .. \$verb alias \$cf_alias\${suffix}
rm -f \$cf_alias\${suffix}
- $LN_S \$cf_target \$cf_alias\${suffix}
- elif test "\$cf_target" != "\$cf_alias\${suffix}" ; then
+ $LN_S \$t \$cf_alias\${suffix}
+ elif test "\$t" != "\$cf_alias\${suffix}" ; then
echo ".so \$cf_source" >\$TMP
CF_EOF
if test -n "$cf_compress" ; then
@@ -3198,9 +3201,9 @@ cat >>$cf_edit_man <<CF_EOF
)
)
elif test \$verb = removing ; then
- test -f \$cf_target && (
- echo \$verb \$cf_target
- rm -f \$cf_target
+ test -f \$t && (
+ echo \$verb \$t
+ rm -f \$t
)
test -d \$cf_subdir\${section} &&
test -n "\$aliases" && (
@@ -3220,6 +3223,7 @@ cat >>$cf_edit_man <<CF_EOF
# echo ".hy 0"
cat \$TMP
fi
+done
;;
esac
done
--- configure
+++ configure 2008-04-08 17:11:28.624009000 +0200
@@ -5100,7 +5100,7 @@ echo "${ECHO_T}$cf_cv_ldflags_search_pat
;;
linux*|gnu*|k*bsd*-gnu)
if test "$DFT_LWR_MODEL" = "shared" ; then
- LOCAL_LDFLAGS="-Wl,-rpath,\$(LOCAL_LIBDIR)"
+ LOCAL_LDFLAGS="-Wl,-rpath-link,\$(LOCAL_LIBDIR)"
LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
fi
if test "$cf_cv_ld_rpath" = yes ; then
@@ -8295,12 +8295,15 @@ cat >>$cf_edit_man <<CF_EOF
echo '? missing rename for '\$cf_source
cf_target="\$cf_source"
fi
- cf_target="\$cf_subdir\${section}/\${cf_target}"
-
CF_EOF
fi
cat >>$cf_edit_man <<CF_EOF
+for t in \$cf_target; do
+ t="\$cf_subdir\${section}/\${t}"
+CF_EOF
+
+cat >>$cf_edit_man <<CF_EOF
sed -f $cf_man_alias \\
CF_EOF
@@ -8310,7 +8313,7 @@ cat >>$cf_edit_man <<CF_EOF
CF_EOF
else
cat >>$cf_edit_man <<CF_EOF
- < \$i >\$TMP
+ < \$i | sed -f $srcdir/edit_man.sed >\$TMP
CF_EOF
fi
@@ -8343,7 +8346,7 @@ cat >>$cf_edit_man <<CF_EOF
mv \$TMP.$cf_so_strip \$TMP
fi
fi
- cf_target="\$cf_target.$cf_so_strip"
+ t="\$t.$cf_so_strip"
CF_EOF
fi
@@ -8352,23 +8355,23 @@ case "$MANPAGE_FORMAT" in #(vi
cat >>$cf_edit_man <<CF_EOF
if test \$form = format ; then
# BSDI installs only .0 suffixes in the cat directories
- cf_target="\`echo \$cf_target|sed -e 's/\.[1-9]\+[a-z]*/.0/'\`"
+ t="\`echo \$t|sed -e 's/\.[1-9]\+[a-z]*/.0/'\`"
fi
CF_EOF
;;
esac
cat >>$cf_edit_man <<CF_EOF
- suffix=\`basename \$cf_target | sed -e 's%^[^.]*%%'\`
+ suffix=\`basename \$t | sed -e 's%^[^.]*%%'\`
if test \$verb = installing ; then
- echo \$verb \$cf_target
- \$INSTALL_DATA \$TMP \$cf_target
+ echo \$verb \$t
+ \$INSTALL_DATA \$TMP \$t
test -d \$cf_subdir\${section} &&
test -n "\$aliases" && (
cd \$cf_subdir\${section} && (
- cf_source=\`echo \$cf_target |sed -e 's%^.*/\([^/][^/]*/[^/][^/]*$\)%\1%'\`
+ cf_source=\`echo \$t |sed -e 's%^.*/\([^/][^/]*/[^/][^/]*$\)%\1%'\`
test -n "$cf_so_strip" && cf_source=\`echo \$cf_source |sed -e 's%\.$cf_so_strip\$%%'\`
- cf_target=\`basename \$cf_target\`
+ t=\`basename \$t\`
for cf_alias in \$aliases
do
if test \$section = 1 ; then
@@ -8377,15 +8380,15 @@ cat >>$cf_edit_man <<CF_EOF
if test "$MANPAGE_SYMLINKS" = yes ; then
if test -f \$cf_alias\${suffix} ; then
- if ( cmp -s \$cf_target \$cf_alias\${suffix} )
+ if ( cmp -s \$t \$cf_alias\${suffix} )
then
continue
fi
fi
echo .. \$verb alias \$cf_alias\${suffix}
rm -f \$cf_alias\${suffix}
- $LN_S \$cf_target \$cf_alias\${suffix}
- elif test "\$cf_target" != "\$cf_alias\${suffix}" ; then
+ $LN_S \$t \$cf_alias\${suffix}
+ elif test "\$t" != "\$cf_alias\${suffix}" ; then
echo ".so \$cf_source" >\$TMP
CF_EOF
if test -n "$cf_compress" ; then
@@ -8405,9 +8408,9 @@ cat >>$cf_edit_man <<CF_EOF
)
)
elif test \$verb = removing ; then
- test -f \$cf_target && (
- echo \$verb \$cf_target
- rm -f \$cf_target
+ test -f \$t && (
+ echo \$verb \$t
+ rm -f \$t
)
test -d \$cf_subdir\${section} &&
test -n "\$aliases" && (
@@ -8427,6 +8430,7 @@ cat >>$cf_edit_man <<CF_EOF
# echo ".hy 0"
cat \$TMP
fi
+done
;;
esac
done
@@ -14677,7 +14681,7 @@ else
#line 14676 "configure"
#include "confdefs.h"
-#include <stdlib.h>
+// #include <stdlib.h> // conflict with exit declaration
#include <stdio.h>
#if defined(__cplusplus)
@@ -15797,12 +15801,13 @@ if test "$with_termlib" != no ; then
TINFO_ARGS="-L${LIB_DIR} $TEST_ARGS"
SHLIB_LIST="$SHLIB_LIST -l${TINFO_LIB_SUFFIX}"
fi
+ TINFO_ARGS="$TINFO_ARGS -L${LIB_DIR} -l${LIB_NAME}${DFT_ARG_SUFFIX}"
else
# the next lines are needed for linking libtic over libncurses
TINFO_NAME=${LIB_NAME}
TINFO_SUFFIX=${DFT_LIB_SUFFIX}
TINFO_ARG_SUFFIX=${LIB_NAME}${DFT_ARG_SUFFIX}
- TICS_LIST="$SHLIB_LIST -l${LIB_NAME}${DFT_ARG_SUFFIX}"
+ TICS_LIST="$SHLIB_LIST"
TINFO_ARGS="-L${LIB_DIR} -l${LIB_NAME}${DFT_ARG_SUFFIX}"
fi
--- configure.in
+++ configure.in 2008-08-14 17:10:51.210017818 +0200
@@ -1622,12 +1622,13 @@ if test "$with_termlib" != no ; then
TINFO_ARGS="-L${LIB_DIR} $TEST_ARGS"
SHLIB_LIST="$SHLIB_LIST -l${TINFO_LIB_SUFFIX}"
fi
+ TINFO_ARGS="$TINFO_ARGS -L${LIB_DIR} -l${LIB_NAME}${DFT_ARG_SUFFIX}"
else
# the next lines are needed for linking libtic over libncurses
TINFO_NAME=${LIB_NAME}
TINFO_SUFFIX=${DFT_LIB_SUFFIX}
TINFO_ARG_SUFFIX=${LIB_NAME}${DFT_ARG_SUFFIX}
- TICS_LIST="$SHLIB_LIST -l${LIB_NAME}${DFT_ARG_SUFFIX}"
+ TICS_LIST="$SHLIB_LIST"
TINFO_ARGS="-L${LIB_DIR} -l${LIB_NAME}${DFT_ARG_SUFFIX}"
fi
--- include/curses.h.in
+++ include/curses.h.in 2008-04-09 15:44:06.583779000 +0200
@@ -137,6 +137,8 @@ typedef unsigned @cf_cv_typeof_chtype@ c
typedef unsigned @cf_cv_typeof_mmask_t@ mmask_t;
#endif
+#include <features.h>
+#include <sys/types.h>
#include <stdio.h>
#include <unctrl.h>
#include <stdarg.h> /* we need va_list */
--- include/termcap.h.in
+++ include/termcap.h.in 2006-05-18 16:07:15.000000000 +0200
@@ -46,6 +46,8 @@ extern "C"
{
#endif /* __cplusplus */
+#include <features.h>
+#include <termios.h>
#include <sys/types.h>
#undef NCURSES_CONST
--- include/tic.h
+++ include/tic.h 2006-05-18 16:07:15.000000000 +0200
@@ -211,12 +211,12 @@ extern NCURSES_EXPORT(const struct alias
#define NOTFOUND ((struct name_table_entry *) 0)
/* out-of-band values for representing absent capabilities */
-#define ABSENT_BOOLEAN ((signed char)-1) /* 255 */
+#define ABSENT_BOOLEAN (-1) /* 255 */
#define ABSENT_NUMERIC (-1)
#define ABSENT_STRING (char *)0
/* out-of-band values for representing cancels */
-#define CANCELLED_BOOLEAN ((signed char)-2) /* 254 */
+#define CANCELLED_BOOLEAN (-2) /* 254 */
#define CANCELLED_NUMERIC (-2)
#define CANCELLED_STRING (char *)(-1)
--- man/man_db.renames
+++ man/man_db.renames 2006-05-18 16:07:15.000000000 +0200
@@ -161,6 +161,8 @@ tput.1 tput.1
tset.1 tset.1
vprintf.3s vprintf.3
wresize.3x wresize.3ncurses
+curs_terminfo.\\\*n terminfo.5
+tack.1 tack.1
#
# Other:
tack.1m tack.1
--- man/ncurses.3x
+++ man/ncurses.3x 2006-05-18 16:07:15.000000000 +0200
@@ -97,6 +97,10 @@ after the shell environment variable \fB
\fBtset(1)\fR is usually responsible for doing this.
[See \fBterminfo\fR(\*n) for further details.]
.PP
+Beware: the terminal your program is running may or may not have
+the features you expect. Ncurses makes no attempt to check available
+features in advance. This is upto the programmer.
+.PP
The \fBncurses\fR library permits manipulation of data structures,
called \fIwindows\fR, which can be thought of as two-dimensional
arrays of characters representing all or part of a CRT screen.
--- misc/ncurses-config.in
+++ misc/ncurses-config.in 2008-04-10 11:36:57.986551686 +0200
@@ -78,7 +78,7 @@ while test $# -gt 0; do
if test "${prefix}/include" != /usr/include ; then
INCS="-I${prefix}/include"
fi
- if test "@WITH_OVERWRITE@" != no ; then
+ if test "${THIS%[0-5]*}" != ncurses ; then
INCS="$INCS -I${prefix}/include/${THIS}"
fi
sed -e 's,^[ ]*,,' -e 's, [ ]*, ,g' -e 's,[ ]*$,,' <<-ENDECHO
--- misc/terminfo.src
+++ misc/terminfo.src 2008-04-08 17:16:48.748977000 +0200
@@ -301,7 +301,9 @@ dumb|80-column dumb tty,
am,
cols#80,
bel=^G, cr=^M, cud1=^J, ind=^J,
-unknown|unknown terminal type,
+unknown|switch|patch|unknown terminal type,
+ gn, use=dumb,
+net|network|arpanet|dialup|unknown network terminal type,
gn, use=dumb,
lpr|printer|line printer,
OTbs, hc, os,
@@ -757,9 +759,15 @@ linux-c|linux console 1.3.6+ for older n
# The 2.2.x kernels add a private mode that sets the cursor type; use that to
# get a block cursor for cvvis.
# reported by Frank Heckenbach <frank@g-n-u.de>.
+#
+# Do not use a block cursor, <werner@suse.de>
+# This because many programs do have a workaround for the long time
+# missed cvvis entry. A `\E[?1c' in civis will cause a visible but
+# zero high cusor ... re-add it for kernels 2.6.11+
+#
linux|linux console,
civis=\E[?25l\E[?1c, cnorm=\E[?25h\E[?0c,
- cvvis=\E[?25h\E[?8c, use=linux-c-nc,
+ cvvis=\E[?25h\E[?0c, use=linux-c-nc,
# See the note on ICH/ICH1 VERSUS RMIR/SMIR near the end of file
linux-nic|linux with ich/ich1 suppressed for non-curses programs,
@@ -2151,6 +2159,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.
+# (cvvis added by werner)
#
vt220-old|vt200-old|DEC VT220 in vt100 emulation mode,
OTbs, OTpt, am, mir, xenl, xon,
@@ -2160,7 +2169,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,
- cup=\E[%i%p1%d;%p2%dH$<10>, cuu1=\E[A, dch1=\E[P,
+ cup=\E[%i%p1%d;%p2%dH$<10>, cuu1=\E[A, cvvis=\E[?25h, dch1=\E[P,
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,
@@ -2308,6 +2317,7 @@ vt320nam|v320n|DEC VT320 in vt100 emul.
# to SMASH the 1k-barrier...
# From: Adam Thompson <athompso@pangea.ca> Sept 10 1995
# (vt320: uncommented <fsl> --esr)
+# (cvvis added by werner)
vt320|vt300|dec vt320 7 bit terminal,
am, eslok, hs, mir, msgr, xenl,
cols#80, lines#24, wsl#80,
@@ -2317,7 +2327,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,
- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
+ cvvis=\E[?25h, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, fsl=\E[0$},
home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL,
il1=\E[L, ind=\ED,
@@ -2751,13 +2761,14 @@ putty-vt100|VT100+ keyboard layout,
# 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.
+# (cvvis added by werner)
teraterm|Tera Term Pro,
km, xon@,
ncv#43, vt@,
acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376,
blink=\E[5m, bold=\E[1m, civis=\E[?25l, clear=\E[H\E[J,
cnorm=\E[?25h, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
- cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM,
+ cuu1=\E[A, cvvis=\E[?25h, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM,
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~,
@@ -2931,6 +2942,7 @@ xterm-r6|xterm-old|xterm X11R6 version,
use=vt100+enq,
# 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,
cols#80, it#8, lines#24, ncv@,
@@ -2940,7 +2952,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,
- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
+ cvvis=\E[?25h, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
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,
@@ -3372,8 +3384,26 @@ xterm-noapp|xterm with cursor keys in no
xterm-24|vs100|xterms|xterm terminal emulator (X Window System),
lines#24, use=xterm-old,
+# For SuSE Linux: Werner Fink <werner@suse.de>
+# 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),
+ kbs=\177, kdch1=\E[3~,
+ kDIV=\EOo, kMUL=\EOj, kMIN=\EOm, kPLS=\EOk,
+ kfnd=\E[1~, kslt=\E[4~,
+ use=xterm-new,
+
# This is xterm for ncurses.
xterm|xterm terminal emulator (X Window System),
+ use=xterm-suse,
+
+# xterm-debian is identical to xterm-new with the addition of a small
+# VT220-ism regarding the backspace and delete keys; this is mandated by
+# the keyboard configuration section of the Debian Policy Manual.
+xterm-debian|Debian xterm (backspace and delete changed),
+ kbs=\177, kdch1=\E[3~,
use=xterm-new,
# These entries allow access to the X titlebar and icon name as a status line.
@@ -3466,7 +3496,7 @@ xterm-color|nxterm|generic color xterm,
op=\E[m, use=xterm-r6, use=klone+color,
# this describes the alpha-version of Gnome terminal shipped with Redhat 6.0
-gnome-rh62|Gnome terminal,
+gnome-rh62|Gnome terminal on Red Hat,
bce,
kdch1=\177, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS,
use=xterm-color,
@@ -3567,10 +3597,14 @@ mgt|Multi GNOME Terminal,
# This is kvt 0-18.7, shipped with Redhat 6.0 (though whether it supports bce
# or not is debatable).
-kvt|KDE terminal,
+kvt-rh|KDE terminal,
bce, km@,
kdch1=\177, kend=\E[F, khome=\E[H, use=xterm-color,
+# This is kvt for SuSE because we do not support BrokenByDesign[tm].
+kvt|KDE terminal,
+ kbs=\177, kdch1=\E[3~, use=kvt-rh,
+
# Konsole 1.0.1
# (formerly known as kvt)
#
@@ -3673,17 +3707,18 @@ konsole-256color|KDE console window with
# control/alt kf1 to kf12 \E[11;7~ to \E[24;7~
# control/shit/alt kf1 to kf12 \E[11;8~ to \E[24;8~
#
+# Add cvvis <werner@suse.de>
mlterm|multi lingual terminal emulator,
am, eslok, km, mc5i, mir, msgr, npc, xenl,
colors#8, cols#80, it#8, lines#24, pairs#64,
- acsc=00``aaffgghhjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
+ acsc=++\,\,--..00II``aaffgghhjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
bel=^G, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
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,
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,
- ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, enacs=,
+ cvvis=\E[?25h, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM,
+ dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, enacs=,
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>,
@@ -3730,6 +3765,7 @@ mlterm+pcfkeys|fragment for PC-style fke
# 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".
+# (cvvis added by werner)
#
# removed dch/dch1 because they are inconsistent with bce/ech -TD
# remove km as per tack test -TD
@@ -3741,13 +3777,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,
- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, cvvis=\E[?25h,
dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K,
enacs=\E(B\E)0, flash=\E[?5h\E[?5l, home=\E[H, ht=^I,
hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L,
ind=^J, is1=\E[?47l\E=\E[?1l,
- is2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l, kbs=^H,
- kcbt=\E[Z, kmous=\E[M, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O,
+ is2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l, kbs=\177, kcbt=\E[Z,
+ kmous=\E[M, kf1=\E[11~, kf2=\E[12~, kf3=\E[13~, kf4=\E[14~,
+ rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O,
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,
@@ -3756,7 +3793,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,
- use=rxvt+pcfkeys, use=vt220+keypad,
+ use=vt220+keypad, use=rxvt+pcfkeys,
# Key Codes from rxvt reference:
#
# Note: Shift + F1-F10 generates F11-F20
@@ -3839,8 +3876,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,
- kNXT=\E[6$, kPRV=\E[5$, kRIT=\E[c, kcub1=\E[D, kcud1=\E[B,
- kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kel=\E[8\^,
+ kNXT=\E[6$, kPRV=\E[5$, kRIT=\E[c, kcub1=\EOD, kcud1=\EOB,
+ kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3~, kel=\E[8\^,
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~,
@@ -3876,6 +3913,29 @@ rxvt-cygwin-native|rxvt terminal emulato
acsc=0\333+\257\,\256-\^`\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,
+# From: Thomas Dickey <dickey@clark.net> 04 Oct 1997
+# Updated: <20>zg<7A>r Kesim <kesim@math.fu-berlin.de> 02 Nov 1997
+# Updated: Marc Lehmann <pcg@goof.com>, 17 Feb 2005
+#
+rxvt-unicode|rxvt-unicode terminal (X Window System),
+ bw, ccc, hs, mc5i, npc, btns#5, colors#88, lm#0, ncv#0, pairs#256,
+ acsc=+C\,D-A.B0E``aaffgghFiGjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
+ dsl=\E]2;\007, ech=\E[%p1%dX, enacs=, flash=\E[?5h$<20/>\E[?5l,
+ fsl=^G, indn=\E[%p1%dS,
+ initc=\E]4;%p1%d;rgb\:%p2%{65535}%*%{1000}%/%4.4X/%p3%{65535}%*%{1000}%/%4.4X/%p4%{65535}%*%{1000}%/%4.4X\E\\,
+ kIC=\E2$, mc0=\E[i, mc4=\E[4i, mc5=\E[5i, op=\E[39;49m,
+ rin=\E[%p1%dT, ritm=\E[23m, rmacs=\E(B, rmam=\E[?7l,
+ rmcup=\E[r\E[?1049l, rmkx=\E[?1l\E>, rs1=\Ec,
+ s2ds=\E*B, s3ds=\E+B,
+ setab=\E[48;5;%p1%dm, setaf=\E[38;5;%p1%dm,
+ setb=%?%p1%{7}%>%t\E[48;5;%p1%dm%e\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m%;,
+ setf=%?%p1%{7}%>%t\E[38;5;%p1%dm%e\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m%;,
+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\E(0%e\E(B%;,
+ sgr0=\E[m\017, sitm=\E[3m, smacs=\E(0, smam=\E[?7h,
+ smcup=\E[?1049h, smkx=\E[?1h\E=,
+ tsl=\E]2;, u6=\E[%i%d;%dR, u7=\E[6n, u8=\E[?1;2c, u9=\E[c,
+ use=rxvt-basic,
+
# 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,
@@ -3893,7 +3953,7 @@ mrxvt|multitabbed rxvt,
# Eterm 0.9.3
#
# removed kf0 which conflicts with kf10 -TD
-# remove cvvis which conflicts with cnorm -TD
+# remove cvvis which conflicts with cnorm -TD (and re-added by werner)
# 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
@@ -3907,13 +3967,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,
- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
+ cvvis=\E[?25h, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E)0,
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,
is1=\E[?47l\E>\E[?1l,
is2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l, kNXT@,
- kPRV@, ka1=\E[7~, ka3=\E[5~, kb2=\EOu, kbeg=\EOu, kbs=^H,
+ kPRV@, ka1=\E[7~, ka3=\E[5~, kb2=\EOu, kbeg=\EOu, kbs=\177,
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=,
@@ -4249,7 +4309,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
-eterm|gnu emacs term.el terminal emulation,
+eterm-19|gnu emacs term.el terminal emulation,
am, mir, xenl,
cols#80, lines#24,
bel=^G, bold=\E[1m, clear=\E[H\E[J, cr=^M,
@@ -4262,6 +4322,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,
+eterm|emacs|gnu emacs term.el terminal emulation,
+ colors#8, pairs#64,
+ invis=\E[8m, kcub1=\EOD, kcud1=\EOB,
+ kcuf1=\EOC, kcuu1=\EOA, kend=\E[4~,
+ khome=\E[1~, knp=\E[6~, kpp=\E[5~,
+ setab=\E[%p1%{40}%+%dm, setaf=\E[%p1%{30}%+%dm,
+ use=eterm-19,
# Entries for use by the `screen' program by Juergen Weigert,
# Michael Schroeder, Oliver Laumann. The screen and
@@ -4290,7 +4357,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@,
- il=\E[%p1%dL, il1=\E[L, ind=^J, is2=\E)0, kbs=^H, kcbt=\E[Z,
+ il=\E[%p1%dL, il1=\E[L, ind=^J, is2=\E)0, kbs=\177, kcbt=\E[Z,
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,
@@ -4406,7 +4473,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,
- il1=\E[L, ind=^J, kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC,
+ il1=\E[L, ind=^J, kbs=\177, kcub1=\ED, kcud1=\EB, kcuf1=\EC,
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,
@@ -6139,7 +6206,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,
-hp70092|hp70092a|hp70092A|HP 700/92,
+hp70092|hp70092a|hp70092A|70092|HP 700/92,
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,
@@ -9270,6 +9337,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)
+# (cvvis added by werner)
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,
@@ -9279,7 +9347,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,
- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
+ cvvis=\E[?25h, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
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,
@@ -13554,7 +13622,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,
-ibm3151|IBM 3151 display,
+ibm3151|i3151|IBM 3151 display,
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,
@@ -13782,7 +13850,7 @@ lft|lft-pc850|LFT-PC850|IBM LFT PC850 De
sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\E(0%e\E(B%;,
sgr0=\E[0m, smacs=\E(0, smir=\E[4h, smso=\E[7m, smul=\E[4m,
tbc=\E[3g,
-ibm5081|hft|IBM Megapel Color display,
+ibm5081|ibmmpel|hft|IBM Megapel Color display,
acsc=jjkkllmmnnqqttuuvvwwxx, blink@, bold@, s0ds=\E(B,
s1ds=\E(0, sgr0=\E[0m\E(B, use=ibm5154,
ibm5081-c|ibmmpel-c|IBM 5081 1024x1024 256/4096 Megapel enhanced color display,
--- ncurses/Makefile.in
+++ ncurses/Makefile.in 2008-04-09 15:57:41.084024000 +0200
@@ -183,7 +183,7 @@ $(DESTDIR)$(libdir) :
../lib : ; mkdir $@
./fallback.c : $(tinfo)/MKfallback.sh
- sh $(tinfo)/MKfallback.sh @TERMINFO@ @TERMINFO_SRC@ $(FALLBACK_LIST) >$@
+ sh $(srcdir)/run_cmd.sh $(tinfo)/MKfallback.sh @TERMINFO@ @TERMINFO_SRC@ $(FALLBACK_LIST) >$@
./lib_gen.c : $(base)/MKlib_gen.sh ../include/curses.h
sh $(base)/MKlib_gen.sh "$(CPP) $(CPPFLAGS)" "$(AWK)" generated <../include/curses.h >$@
--- ncurses/curses.priv.h
+++ ncurses/curses.priv.h 2006-05-18 16:07:15.000000000 +0200
@@ -1560,6 +1560,8 @@ extern NCURSES_EXPORT(WINDOW *) _nc_make
extern NCURSES_EXPORT(char *) _nc_trace_buf (int, size_t);
extern NCURSES_EXPORT(char *) _nc_trace_bufcat (int, const char *);
extern NCURSES_EXPORT(int) _nc_access (const char *, int);
+extern NCURSES_EXPORT(void) _nc_fsid(void);
+extern NCURSES_EXPORT(void) _nc_fseid(void);
extern NCURSES_EXPORT(int) _nc_baudrate (int);
extern NCURSES_EXPORT(int) _nc_freewin (WINDOW *);
extern NCURSES_EXPORT(int) _nc_getenv_num (const char *);
--- ncurses/run_cmd.sh
+++ ncurses/run_cmd.sh 2006-05-18 16:07:15.000000000 +0200
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+PATH=$PWD/../progs:$PATH
+if test -n "$LD_LIBRARY_PATH"; then
+ LD_LIBRARY_PATH="$PWD/../lib:$LD_LIBRARY_PATH"
+else
+ LD_LIBRARY_PATH="$PWD/../lib"
+fi
+export PATH LD_LIBRARY_PATH
+
+exec ${1+"$@"}
--- ncurses/tinfo/MKfallback.sh
+++ ncurses/tinfo/MKfallback.sh 2006-05-18 16:07:15.000000000 +0200
@@ -57,6 +57,12 @@ else
tmp_info=
fi
+if test -n "$TERMINFO" -a -d "$TERMINFO" ; then
+ infocmp="infocmp -v1 -A $TERMINFO"
+else
+ infocmp="infocmp -v1"
+fi
+
cat <<EOF
/*
* DO NOT EDIT THIS FILE BY HAND! It is generated by MKfallback.sh.
@@ -77,7 +83,7 @@ EOF
for x in $*
do
echo "/* $x */"
- infocmp -E $x
+ $infocmp -E $x
done
cat <<EOF
@@ -88,7 +94,7 @@ EOF
for x in $*
do
echo "$comma /* $x */"
- infocmp -e $x
+ $infocmp -e $x
comma=","
done
--- ncurses/tinfo/access.c
+++ ncurses/tinfo/access.c 2006-05-18 16:07:15.000000000 +0200
@@ -37,6 +37,9 @@
#include <tic.h>
#include <nc_alloc.h>
+#ifdef linux
+# include <sys/fsuid.h>
+#endif
MODULE_ID("$Id: access.c,v 1.14 2007/11/18 00:57:53 tom Exp $")
@@ -106,6 +109,30 @@ _nc_basename(char *path)
return path + _nc_pathlast(path);
}
+NCURSES_EXPORT(void)
+_nc_fsid()
+{
+#ifdef linux
+ int _old_errno = errno;
+ setfsuid(getuid());
+ setfsgid(getgid());
+ errno = _old_errno;
+#endif
+ return;
+}
+
+NCURSES_EXPORT(void)
+_nc_fseid()
+{
+#ifdef linux
+ int _old_errno = errno;
+ setfsuid(geteuid());
+ setfsgid(getegid());
+ errno = _old_errno;
+#endif
+ return;
+}
+
NCURSES_EXPORT(int)
_nc_access(const char *path, int mode)
{
--- ncurses/tinfo/lib_setup.c
+++ ncurses/tinfo/lib_setup.c 2006-05-18 17:52:22.000000000 +0200
@@ -454,6 +454,9 @@ _nc_locale_breaks_acs(void)
if ((env = getenv("NCURSES_NO_UTF8_ACS")) != 0) {
return atoi(env);
} else if ((env = getenv("TERM")) != 0) {
+ char *yast = getenv("YAST_DOES_ACS");
+ if (yast != 0)
+ return 0; /* YaST uses always correct font mappings */
if (strstr(env, "linux"))
return 1; /* always broken */
if (strstr(env, "screen") != 0
--- ncurses/tinfo/read_entry.c
+++ ncurses/tinfo/read_entry.c 2006-05-18 16:07:15.000000000 +0200
@@ -366,6 +366,7 @@ _nc_read_file_entry(const char *const fi
int limit;
char buffer[MAX_ENTRY_SIZE + 1];
+ _nc_fsid();
if (_nc_access(filename, R_OK) < 0
|| (fd = open(filename, O_RDONLY | O_BINARY)) < 0) {
T(("cannot open terminfo %s (errno=%d)", filename, errno));
@@ -382,6 +383,7 @@ _nc_read_file_entry(const char *const fi
}
close(fd);
}
+ _nc_fseid();
return (code);
}
--- ncurses/tinfo/read_termcap.c
+++ ncurses/tinfo/read_termcap.c 2006-05-18 16:07:15.000000000 +0200
@@ -319,14 +319,18 @@ _nc_getent(
*/
if (fd >= 0) {
(void) lseek(fd, (off_t) 0, SEEK_SET);
- } else if ((_nc_access(db_array[current], R_OK) < 0)
- || (fd = open(db_array[current], O_RDONLY, 0)) < 0) {
- /* No error on unfound file. */
- if (errno == ENOENT)
- continue;
- free(record);
- return (TC_SYS_ERR);
} else {
+ _nc_fsid();
+ if ((_nc_access(db_array[current], R_OK) < 0) ||
+ (fd = open(db_array[current], O_RDONLY, 0)) < 0) {
+ _nc_fseid();
+ /* No error on unfound file. */
+ if (errno == ENOENT)
+ continue;
+ free(record);
+ return (TC_SYS_ERR);
+ }
+ _nc_fseid();
myfd = TRUE;
}
lineno = 0;
@@ -1097,8 +1101,10 @@ _nc_read_termcap_entry(const char *const
for (i = 0; i < filecount; i++) {
T(("Looking for %s in %s", tn, termpaths[i]));
+ _nc_fsid();
if (_nc_access(termpaths[i], R_OK) == 0
&& (fp = fopen(termpaths[i], "r")) != (FILE *) 0) {
+ _nc_fseid();
_nc_set_source(termpaths[i]);
/*
@@ -1110,6 +1116,7 @@ _nc_read_termcap_entry(const char *const
(void) fclose(fp);
}
+ _nc_fseid();
}
}
if (copied != 0)
--- test/test.priv.h
+++ test/test.priv.h 2006-05-18 16:07:19.000000000 +0200
@@ -472,12 +472,12 @@ extern int optind;
#endif
/* out-of-band values for representing absent capabilities */
-#define ABSENT_BOOLEAN ((signed char)-1) /* 255 */
+#define ABSENT_BOOLEAN (char)-1) /* 255 */
#define ABSENT_NUMERIC (-1)
#define ABSENT_STRING (char *)0
/* out-of-band values for representing cancels */
-#define CANCELLED_BOOLEAN ((signed char)-2) /* 254 */
+#define CANCELLED_BOOLEAN (-2) /* 254 */
#define CANCELLED_NUMERIC (-2)
#define CANCELLED_STRING (char *)(-1)