# ------------------------------------------------------------------------------
# aclocal.m4 | 12 +++++----
# config.guess | 58 ++++++++++++++++++++++++++++++++++++-----------
# config.sub | 32 ++++++++++++++++---------
# configure | 6 ++--
# main.c | 36 ++++++++++++++++++++++++-----
# misc.c | 12 +++++----
# version.h | 2 -
# vttests/16colors.sh | 2 -
# vttests/8colors.sh | 2 -
# vttests/doublechars.sh | 2 -
# vttests/dynamic.sh | 2 -
# vttests/fonts.sh | 2 -
# vttests/resize.sh | 2 -
# vttests/title.sh | 2 -
# xterm.log.html | 22 +++++++++++++++++
# 15 files changed, 142 insertions(+), 52 deletions(-)
# ------------------------------------------------------------------------------
Index: aclocal.m4
--- xterm-146+/aclocal.m4 Mon Aug 28 14:56:36 2000
+++ xterm-147/aclocal.m4 Wed Oct 25 21:09:45 2000
@@ -109,11 +109,13 @@
dnl Derive the system name, as a check for reusing the autoconf cache.
dnl
dnl If we've packaged config.guess and config.sub, run that (since it does a
-dnl better job than uname).
+dnl better job than uname). Normally we'll use AC_CANONICAL_HOST, but allow
+dnl an extra parameter that we may override, e.g., for AC_CANONICAL_SYSTEM
+dnl which is useful in cross-compiles.
AC_DEFUN([CF_CHECK_CACHE],
[
if test -f $srcdir/config.guess ; then
- AC_CANONICAL_HOST
+ ifelse([$1],,[AC_CANONICAL_HOST],[$1])
system_name="$host_os"
else
system_name="`(uname -s -r) 2>/dev/null`"
@@ -346,7 +348,7 @@
dnl to documentation, unrecognized directives cause older compilers to barf.
AC_DEFUN([CF_GCC_ATTRIBUTES],
[
-if test -n "$GCC"
+if test "$GCC" = yes
then
cat > conftest.i <<EOF
#ifndef GCC_PRINTF
@@ -362,7 +364,7 @@
#define GCC_UNUSED /* nothing */
#endif
EOF
-if test -n "$GCC"
+if test "$GCC" = yes
then
AC_CHECKING([for $CC __attribute__ directives])
changequote(,)dnl
@@ -429,7 +431,7 @@
dnl
AC_DEFUN([CF_GCC_WARNINGS],
[
-if test -n "$GCC"
+if test "$GCC" = yes
then
changequote(,)dnl
cat > conftest.$ac_ext <<EOF
Index: config.guess
--- xterm-146+/config.guess Thu Aug 24 21:41:14 2000
+++ xterm-147/config.guess Wed Oct 25 21:08:45 2000
@@ -3,7 +3,7 @@
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000
# Free Software Foundation, Inc.
-version='2000-06-13'
+version='2000-10-23'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -122,7 +122,7 @@
# object file format.
# Determine the machine/vendor (is the vendor relevant).
case "${UNAME_MACHINE}" in
- amiga) machine=m68k-cbm ;;
+ amiga) machine=m68k-unknown ;;
arm32) machine=arm-unknown ;;
atari*) machine=m68k-atari ;;
sun3*) machine=m68k-sun ;;
@@ -218,7 +218,7 @@
echo alpha-dec-winnt3.5
exit 0 ;;
Amiga*:UNIX_System_V:4.0:*)
- echo m68k-cbm-sysv4
+ echo m68k-unknown-sysv4
exit 0;;
amiga:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
@@ -434,7 +434,7 @@
*:IRIX*:*:*)
echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
exit 0 ;;
- ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
+ ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX '
i?86:AIX:*:*)
@@ -672,6 +672,9 @@
i*:MINGW*:*)
echo ${UNAME_MACHINE}-pc-mingw32
exit 0 ;;
+ i*:PW*:*)
+ echo ${UNAME_MACHINE}-pc-pw32
+ exit 0 ;;
i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
# How do we know it's Interix rather than the generic POSIX subsystem?
# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
@@ -698,8 +701,7 @@
# The BFD linker knows what the default object file format is, so
# first see if it will tell us. cd to the root directory to prevent
# problems with other programs or directories called `ld' in the path.
- ld_help_string=`cd /; ld --help 2>&1`
- ld_supported_emulations=`echo $ld_help_string \
+ ld_supported_emulations=`cd /; ld --help 2>&1 \
| sed -ne '/supported emulations:/!d
s/[ ][ ]*/ /g
s/.*supported emulations: *//
@@ -715,8 +717,7 @@
exit 0
;;
elf_i?86)
- echo "${UNAME_MACHINE}-pc-linux"
- exit 0
+ TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
;;
i?86coff)
echo "${UNAME_MACHINE}-pc-linux-gnucoff"
@@ -859,14 +860,30 @@
rm -f $dummy.c $dummy
elif test "${UNAME_MACHINE}" = "s390"; then
echo s390-ibm-linux && exit 0
+ elif test "${UNAME_MACHINE}" = "x86_64"; then
+ echo x86_64-unknown-linux-gnu && exit 0
+ elif test "${UNAME_MACHINE}" = "parisc" -o "${UNAME_MACHINE}" = "hppa"; then
+ # Look for CPU level
+ case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
+ PA7*)
+ echo hppa1.1-unknown-linux-gnu
+ ;;
+ PA8*)
+ echo hppa2.0-unknown-linux-gnu
+ ;;
+ *)
+ echo hppa-unknown-linux-gnu
+ ;;
+ esac
+ exit 0
else
# Either a pre-BFD a.out linker (linux-gnuoldld)
# or one that does not give us useful --help.
# GCC wants to distinguish between linux-gnuoldld and linux-gnuaout.
# If ld does not provide *any* "supported emulations:"
# that means it is gnuoldld.
- echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations:"
- test $? != 0 && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0
+ test -z "$ld_supported_emulations" \
+ && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0
case "${UNAME_MACHINE}" in
i?86)
@@ -903,6 +920,7 @@
EOF
$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0
rm -f $dummy.c $dummy
+ test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
fi ;;
# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. earlier versions
# are messed up and put the nodename in both sysname and nodename.
@@ -980,7 +998,7 @@
exit 0 ;;
M68*:*:R3V[567]*:*)
test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
- 3[34]??:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0)
+ 3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0)
OS_REL=''
test -r /etc/.relid \
&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
@@ -1039,7 +1057,7 @@
mc68*:A/UX:*:*)
echo m68k-apple-aux${UNAME_RELEASE}
exit 0 ;;
- news*:NEWS-OS:*:6*)
+ news*:NEWS-OS:6*:*)
echo mips-sony-newsos6
exit 0 ;;
R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
@@ -1082,14 +1100,28 @@
*:QNX:*:4*)
echo i386-pc-qnx
exit 0 ;;
- NSR-W:NONSTOP_KERNEL:*:*)
+ NSR-[KW]:NONSTOP_KERNEL:*:*)
echo nsr-tandem-nsk${UNAME_RELEASE}
exit 0 ;;
+ *:NonStop-UX:*:*)
+ echo mips-compaq-nonstopux
+ exit 0 ;;
BS2000:POSIX*:*:*)
echo bs2000-siemens-sysv
exit 0 ;;
DS/*:UNIX_System_V:*:*)
echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
+ exit 0 ;;
+ *:Plan9:*:*)
+ # "uname -m" is not consistent, so use $cputype instead. 386
+ # is converted to i386 for consistency with other x86
+ # operating systems.
+ if test "$cputype" = "386"; then
+ UNAME_MACHINE=i386
+ else
+ UNAME_MACHINE="$cputype"
+ fi
+ echo ${UNAME_MACHINE}-unknown-plan9
exit 0 ;;
esac
Index: config.sub
--- xterm-146+/config.sub Thu Aug 24 21:41:14 2000
+++ xterm-147/config.sub Wed Oct 25 21:04:49 2000
@@ -3,7 +3,7 @@
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000
# Free Software Foundation, Inc.
-version='2000-07-06'
+version='2000-10-25'
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
@@ -207,7 +207,7 @@
# Recognize the basic CPU types without company name.
# Some are omitted here because they have special meanings below.
tahoe | i860 | ia64 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \
- | arme[lb] | pyramid | mn10200 | mn10300 | tron | a29k \
+ | arme[lb] | armv[2345] | armv[345][lb] | pyramid | mn10200 | mn10300 | tron | a29k \
| 580 | i960 | h8300 \
| x86 | ppcbe | mipsbe | mipsle | shbe | shle | armbe | armle \
| hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n \
@@ -235,7 +235,7 @@
# We use `pc' rather than `unknown'
# because (1) that's what they normally are, and
# (2) the word "unknown" tends to confuse beginning users.
- i[234567]86)
+ i[234567]86 | x86_64)
basic_machine=$basic_machine-pc
;;
# Object if more than one company name word.
@@ -265,7 +265,7 @@
| f301-* | armv*-* | s390-* | sv1-* | t3e-* \
| m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \
| thumb-* | v850-* | d30v-* | tic30-* | c30-* | fr30-* \
- | bs2000-* | tic54x-* | c54x-*)
+ | bs2000-* | tic54x-* | c54x-* | x86_64-*)
;;
# Recognize the various machine names and aliases which stand
# for a CPU type and a company and sometimes even an OS.
@@ -302,14 +302,14 @@
os=-sysv
;;
amiga | amiga-*)
- basic_machine=m68k-cbm
+ basic_machine=m68k-unknown
;;
amigaos | amigados)
- basic_machine=m68k-cbm
+ basic_machine=m68k-unknown
os=-amigaos
;;
amigaunix | amix)
- basic_machine=m68k-cbm
+ basic_machine=m68k-unknown
os=-sysv4
;;
apollo68)
@@ -520,6 +520,10 @@
basic_machine=i386-unknown
os=-mingw32
;;
+ i[34567]86-pw32 | pw32)
+ basic_machine=i586-unknown
+ os=-pw32
+ ;;
iris | iris4d)
basic_machine=mips-sgi
case $os in
@@ -639,6 +643,10 @@
basic_machine=i960-intel
os=-mon960
;;
+ nonstopux)
+ basic_machine=mips-compaq
+ os=-nonstopux
+ ;;
np1)
basic_machine=np1-gould
;;
@@ -674,7 +682,7 @@
pc532 | pc532-*)
basic_machine=ns32k-pc532
;;
- pentium | p5 | k5 | k6 | nexen)
+ pentium | p5 | k5 | k6 | nexgen)
basic_machine=i586-pc
;;
pentiumpro | p6 | 6x86 | athlon)
@@ -683,7 +691,7 @@
pentiumii | pentium2)
basic_machine=i786-pc
;;
- pentium-* | p5-* | k5-* | k6-* | nexen-*)
+ pentium-* | p5-* | k5-* | k6-* | nexgen-*)
basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
pentiumpro-* | p6-* | 6x86-* | athlon-*)
@@ -907,7 +915,7 @@
basic_machine=we32k-att
;;
sh3 | sh4)
- base_machine=sh-unknown
+ basic_machine=sh-unknown
;;
sparc | sparcv9)
basic_machine=sparc-sun
@@ -990,7 +998,7 @@
| -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
| -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
| -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \
- | -openstep* | -oskit*)
+ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx*)
@@ -1052,7 +1060,7 @@
-ns2 )
os=-nextstep2
;;
- -nsk)
+ -nsk*)
os=-nsk
;;
# Preserve the version number of sinix5.
Index: configure
--- xterm-146+/configure Sun Sep 10 21:53:18 2000
+++ xterm-147/configure Thu Oct 26 05:57:29 2000
@@ -5870,7 +5870,7 @@
if test "$with_warnings" = yes
then
-if test -n "$GCC"
+if test "$GCC" = yes
then
cat > conftest.i <<EOF
#ifndef GCC_PRINTF
@@ -5886,7 +5886,7 @@
#define GCC_UNUSED /* nothing */
#endif
EOF
-if test -n "$GCC"
+if test "$GCC" = yes
then
echo "checking for $CC __attribute__ directives" 1>&6
echo "configure:5893: checking for $CC __attribute__ directives" >&5
@@ -5943,7 +5943,7 @@
fi
-if test -n "$GCC"
+if test "$GCC" = yes
then
cat > conftest.$ac_ext <<EOF
#line 5950 "configure"
Index: main.c
--- xterm-146+/main.c Sat Sep 9 11:34:18 2000
+++ xterm-147/main.c Thu Oct 26 07:12:40 2000
@@ -2646,11 +2646,7 @@
initial_erase = sg.sg_erase;
#endif /* USE_SYSV_TERMIO */
}
- if (resource.backarrow_is_erase)
- if (initial_erase == 127) { /* see input.c */
- term->keyboard.flags &= ~MODE_DECBKM;
- }
- TRACE(("%s @%d, ptyInitialErase:%d, backspace_is_erase:%d, initial_erase:%d\n",
+ TRACE(("%s @%d, ptyInitialErase:%d, backarrow_is_erase:%d, initial_erase:%d (from /dev/tty)\n",
__FILE__, __LINE__,
resource.ptyInitialErase,
resource.backarrow_is_erase,
@@ -2668,6 +2664,7 @@
tty = -1;
}
+ TRACE(("%s @%d, calling get_pty...\n", __FILE__, __LINE__));
if (get_pty (&screen->respond, XDisplayString(screen->display)))
{
/* no ptys! */
@@ -2675,6 +2672,33 @@
xterm_name, strerror(errno));
exit (ERROR_PTYS);
}
+
+#if OPT_INITIAL_ERASE
+ if (resource.ptyInitialErase) {
+#ifdef USE_SYSV_TERMIO
+ struct termio my_tio;
+ if(ioctl(screen->respond, TCGETA, &my_tio) == 0)
+ initial_erase = my_tio.c_cc[VERASE];
+#elif defined(USE_POSIX_TERMIOS)
+ struct termios my_tio;
+ if (tcgetattr(screen->respond, &my_tio) == 0)
+ initial_erase = my_tio.c_cc[VERASE];
+#else /* !USE_SYSV_TERMIO && !USE_POSIX_TERMIOS */
+ struct sgttyb my_sg;
+ if(ioctl(screen->respond, TIOCGETP, (char *)&my_sg) == 0)
+ initial_erase = my_sg.sg_erase;
+#endif /* USE_SYSV_TERMIO */
+ }
+ if (resource.backarrow_is_erase)
+ if (initial_erase == 127) { /* see input.c */
+ term->keyboard.flags &= ~MODE_DECBKM;
+ }
+ TRACE(("%s @%d, ptyInitialErase:%d, backarrow_is_erase:%d, initial_erase:%d (from pty)\n",
+ __FILE__, __LINE__,
+ resource.ptyInitialErase,
+ resource.backarrow_is_erase,
+ initial_erase));
+#endif
}
/* avoid double MapWindow requests */
@@ -2735,7 +2759,7 @@
}
#if OPT_INITIAL_ERASE
- TRACE(("%s @%d, resource ptyInitialErase:%d, backspace_is_erase:%d\n",
+ TRACE(("%s @%d, resource ptyInitialErase:%d, backarrow_is_erase:%d\n",
__FILE__, __LINE__,
resource.ptyInitialErase,
resource.backarrow_is_erase));
Index: misc.c
--- xterm-146+/misc.c Wed Sep 6 19:00:40 2000
+++ xterm-147/misc.c Thu Oct 26 22:59:22 2000
@@ -91,6 +91,7 @@
#include <menu.h>
#include <fontutils.h>
#include <xcharmouse.h>
+#include <VTparse.h>
#if (XtSpecificationRelease < 6)
#ifndef X_GETTIMEOFDAY
@@ -1223,7 +1224,7 @@
state = 3;
/* FALLTHRU */
default:
- if (!isprint(*cp & 0x7f))
+ if (ansi_table[CharOf(*cp)] != CASE_PRINT)
return;
}
}
@@ -1600,11 +1601,12 @@
}
static void
-ChangeGroup(String attribute, XtArgVal value)
+ChangeGroup(String attribute, char * value)
{
Arg args[1];
char *name = (value != 0) ? (char *)value : "";
+ TRACE(("ChangeGroup(attribute=%s, value=%s)\n", attribute, name));
#if OPT_SAME_NAME
/* If the attribute isn't going to change, then don't bother... */
@@ -1635,17 +1637,17 @@
}
strcpy(newname, "*** ");
strcat(newname, name);
- ChangeGroup( XtNiconName, (XtArgVal)newname );
+ ChangeGroup( XtNiconName, newname );
free(newname);
} else
#endif /* OPT_ZICONBEEP */
- ChangeGroup( XtNiconName, (XtArgVal)name );
+ ChangeGroup( XtNiconName, name );
}
void
Changetitle(register char *name)
{
- ChangeGroup( XtNtitle, (XtArgVal)name );
+ ChangeGroup( XtNtitle, name );
}
#define Strlen(s) strlen((char *)(s))
Index: version.h
--- xterm-146+/version.h Tue Sep 12 21:26:48 2000
+++ xterm-147/version.h Thu Oct 26 23:09:31 2000
@@ -6,5 +6,5 @@
* XFree86 to which this version of xterm has been built. The number in
* parentheses is my patch number (T.Dickey).
*/
-#define XTERM_PATCH 146
+#define XTERM_PATCH 147
#define XFREE86_VERSION "XFree86 4.0.1c"
Index: vttests/16colors.sh
--- xterm-146+/vttests/16colors.sh Sun Apr 25 21:24:56 1999
+++ xterm-147/vttests/16colors.sh Thu Oct 26 22:51:42 2000
@@ -12,7 +12,7 @@
OPT='-n'
SUF=''
TMP=/tmp/xterm$$
-for verb in print printf ; do
+for verb in printf print ; do
rm -f $TMP
eval '$verb "\c" >$TMP || echo fail >$TMP' 2>/dev/null
if test -f $TMP ; then
Index: vttests/8colors.sh
--- xterm-146+/vttests/8colors.sh Sun Apr 25 21:25:08 1999
+++ xterm-147/vttests/8colors.sh Thu Oct 26 22:51:42 2000
@@ -9,7 +9,7 @@
OPT='-n'
SUF=''
TMP=/tmp/xterm$$
-for verb in print printf ; do
+for verb in printf print ; do
rm -f $TMP
eval '$verb "\c" >$TMP || echo fail >$TMP' 2>/dev/null
if test -f $TMP ; then
Index: vttests/doublechars.sh
--- xterm-146+/vttests/doublechars.sh Mon Sep 27 16:12:18 1999
+++ xterm-147/vttests/doublechars.sh Thu Oct 26 22:51:42 2000
@@ -13,7 +13,7 @@
OPT='-n'
SUF=''
TMP=/tmp/xterm$$
-for verb in print printf ; do
+for verb in printf print ; do
rm -f $TMP
eval '$verb "\c" >$TMP || echo fail >$TMP' 2>/dev/null
if test -f $TMP ; then
Index: vttests/dynamic.sh
--- xterm-146+/vttests/dynamic.sh Sun Apr 11 16:38:14 1999
+++ xterm-147/vttests/dynamic.sh Thu Oct 26 22:51:42 2000
@@ -10,7 +10,7 @@
OPT='-n'
SUF=''
TMP=/tmp/xterm$$
-for verb in print printf ; do
+for verb in printf print ; do
rm -f $TMP
eval '$verb "\c" >$TMP || echo fail >$TMP' 2>/dev/null
if test -f $TMP ; then
Index: vttests/fonts.sh
--- xterm-146+/vttests/fonts.sh Sun Apr 11 16:38:14 1999
+++ xterm-147/vttests/fonts.sh Thu Oct 26 22:51:42 2000
@@ -10,7 +10,7 @@
OPT='-n'
SUF=''
TMP=/tmp/xterm$$
-for verb in print printf ; do
+for verb in printf print ; do
rm -f $TMP
eval '$verb "\c" >$TMP || echo fail >$TMP' 2>/dev/null
if test -f $TMP ; then
Index: vttests/resize.sh
--- xterm-146+/vttests/resize.sh Sun Apr 11 16:38:14 1999
+++ xterm-147/vttests/resize.sh Thu Oct 26 22:51:42 2000
@@ -10,7 +10,7 @@
OPT='-n'
SUF=''
TMP=/tmp/xterm$$
-for verb in print printf ; do
+for verb in printf print ; do
rm -f $TMP
eval '$verb "\c" >$TMP || echo fail >$TMP' 2>/dev/null
if test -f $TMP ; then
Index: vttests/title.sh
--- xterm-146+/vttests/title.sh Sun Apr 25 21:25:20 1999
+++ xterm-147/vttests/title.sh Thu Oct 26 22:49:14 2000
@@ -10,7 +10,7 @@
OPT='-n'
SUF=''
TMP=/tmp/xterm$$
-for verb in print printf ; do
+for verb in printf print ; do
rm -f $TMP
eval '$verb "\c" >$TMP || echo fail >$TMP' 2>/dev/null
if test -f $TMP ; then
Index: xterm.log.html
--- xterm-146+/xterm.log.html Tue Sep 12 21:54:04 2000
+++ xterm-147/xterm.log.html Thu Oct 26 23:19:38 2000
@@ -42,6 +42,7 @@
xc/programs/Xserver/hw/xfree86).
<UL>
+<LI><A HREF="#xterm_147">Patch #147 - 2000/10/26 - XFree86 4.0.1c</A>
<LI><A HREF="#xterm_146">Patch #146 - 2000/9/12 - XFree86 4.0.1c</A>
<LI><A HREF="#xterm_145">Patch #145 - 2000/9/11 - XFree86 4.0.1c</A>
<LI><A HREF="#xterm_144">Patch #144 - 2000/8/23 - XFree86 4.0.1b</A>
@@ -190,6 +191,27 @@
<LI><A HREF="#xterm_02">Patch #2 - 1996/1/7</A>
<LI><A HREF="#xterm_01">Patch #1 - 1996/1/6</A>
</UL>
+
+<H1><A NAME="xterm_147">Patch #147 - 2000/10/26 - XFree86 4.0.1c</A></H1>
+<ul>
+ <li>correct implementation of <code>ptyInitialErase</code>: the
+ value assigned to <code>initial_erase</code> was for the control
+ terminal, which is correct as far as it goes. But there was no
+ following test for the pseudo-terminal's erase value, which would
+ overwrite the default obtained from the control terminal
+ (reported by Christian Weisgerber <naddy@mips.inka.de>).
+
+ <li>modify check for printable-characters in OSC string to use xterm's
+ ansi_table rather than isprint() macro, to isolate this check from
+ locale settings. This fixes a problem using 8-bit characters to
+ set the title (reported by Ricardas Cepas <rch@richard.eu.org>).
+
+ <li>modify sample scripts to check for printf before print, since the
+ latter is not as well standardized (e.g., on Linux).
+
+ <li>updated config.sub, config.guess to reflect changes on
+ subversions.gnu.org
+</ul>
<H1><A NAME="xterm_146">Patch #146 - 2000/9/12 - XFree86 4.0.1c</A></H1>
<ul>