xterm-147.patch.txt

# ------------------------------------------------------------------------------
# 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 &lt;naddy@mips.inka.de&gt;).
+
+       <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 &lt;rch@richard.eu.org&gt;).
+
+       <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>