xterm: Changes to 'upstream-experimental'
INSTALL | 23
Imakefile | 32
MANIFEST | 5
Makefile.in | 111 -
aclocal.m4 | 168 +-
button.c | 131 +
charproc.c | 71
configure | 3769 +++++++++++++++++++++++++++--------------------
configure.in | 21
ctlseqs.ms | 135 -
ctlseqs.txt | 366 ++--
fontutils.c | 43
input.c | 38
koi8rxterm.man | 37
linedata.c | 6
main.c | 173 +-
menu.c | 7
minstall.in | 28
misc.c | 309 +--
os2main.c | 2230 ---------------------------
package/debian/changelog | 19
package/debian/rules | 1
package/freebsd/Makefile | 2
package/xterm.spec | 5
precompose.c | 7
print.c | 21
proto.h | 62
ptydata.c | 12
ptyx.h | 21
resize.c | 281 +--
resize.man | 167 +-
screen.c | 27
scrollbar.c | 6
trace.c | 28
trace.h | 14
util.c | 31
uxterm.man | 35
version.c | 74
version.h | 18
wcwidth.c | 148 +
xstrings.c | 117 -
xstrings.h | 3
xterm.h | 38
xterm.log.html | 159 +
xterm.man | 6
xterm_io.h | 88 -
xtermcfg.hin | 5
47 files changed, 4008 insertions(+), 5090 deletions(-)
New commits:
commit 71aad68bd8b0dcd1296628aa7eaa8c3309b0dddf
Author: Julien Cristau <jcristau@debian.org>
Date: Sat Feb 23 15:53:58 2013 +0100
Imported Upstream version 290
diff --git a/MANIFEST b/MANIFEST
index 081a37c..4491fae 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -1,4 +1,4 @@
-MANIFEST for xterm-289, version xterm-289
+MANIFEST for xterm-290, version xterm-290
--------------------------------------------------------------------------------
MANIFEST this file
256colres.h resource-definitions for 256-color mode
diff --git a/package/debian/changelog b/package/debian/changelog
index d651847..ce2a233 100644
--- a/package/debian/changelog
+++ b/package/debian/changelog
@@ -1,3 +1,9 @@
+xterm-dev (290) unstable; urgency=low
+
+ * Fix incomplete revert of #282 change.
+
+ -- Thomas E. Dickey <dickey@invisible-island.net> Tue, 12 Feb 2013 19:48:21 -0500
+
xterm-dev (289) unstable; urgency=low
* Miscellaneous fixes.
diff --git a/package/freebsd/Makefile b/package/freebsd/Makefile
index 81a1711..a09398b 100644
--- a/package/freebsd/Makefile
+++ b/package/freebsd/Makefile
@@ -5,7 +5,7 @@
# and "make makesum".
PORTNAME= xterm
-PORTVERSION= 289
+PORTVERSION= 290
CATEGORIES= x11
MASTER_SITES= ftp://invisible-island.net/xterm/ \
CRITICAL
diff --git a/package/xterm.spec b/package/xterm.spec
index 174716b..8a845c0 100644
--- a/package/xterm.spec
+++ b/package/xterm.spec
@@ -1,7 +1,7 @@
-# $XTermId: xterm.spec,v 1.43 2013/02/03 18:59:49 tom Exp $
+# $XTermId: xterm.spec,v 1.44 2013/02/13 00:46:35 tom Exp $
Summary: X terminal emulator (development version)
Name: xterm-dev
-Version: 289
+Version: 290
Release: 1
License: X11
Group: User Interface/X
diff --git a/ptyx.h b/ptyx.h
index d904b39..55cd8dd 100644
--- a/ptyx.h
+++ b/ptyx.h
@@ -1,4 +1,4 @@
-/* $XTermId: ptyx.h,v 1.761 2013/02/04 01:35:47 Peder.Stray Exp $ */
+/* $XTermId: ptyx.h,v 1.762 2013/02/13 00:42:21 tom Exp $ */
/*
* Copyright 1999-2012,2013 by Thomas E. Dickey
@@ -1897,7 +1897,6 @@ typedef struct {
* Working variables for getLineData().
*/
size_t lineExtra; /* extra space for combining chars */
- Dimension widestLine; /* length of longest LineData */
/*
* Pointer to the current visible buffer.
*/
diff --git a/screen.c b/screen.c
index 1f6b27b..d3d7822 100644
--- a/screen.c
+++ b/screen.c
@@ -1,4 +1,4 @@
-/* $XTermId: screen.c,v 1.474 2013/02/03 23:19:45 tom Exp $ */
+/* $XTermId: screen.c,v 1.475 2013/02/13 00:42:30 tom Exp $ */
/*
* Copyright 1999-2012,2013 by Thomas E. Dickey
@@ -447,10 +447,6 @@ Reallocate(XtermWidget xw,
return 0;
}
- if (screen->widestLine < ncol)
- screen->widestLine = (Dimension) ncol;
- ncol = screen->widestLine;
-
oldBufData = *sbufaddr;
TRACE(("Reallocate %dx%d -> %dx%d\n", oldrow, MaxCols(screen), nrow, ncol));
@@ -550,10 +546,6 @@ ReallocateBufOffsets(XtermWidget xw,
assert(nrow != 0);
assert(ncol != 0);
- if (screen->widestLine < ncol)
- screen->widestLine = (Dimension) ncol;
- ncol = screen->widestLine;
-
oldBufData = *sbufaddr;
oldBufHead = *sbuf;
diff --git a/version.h b/version.h
index 3fd95c8..bf717b6 100644
--- a/version.h
+++ b/version.h
@@ -1,4 +1,4 @@
-/* $XTermId: version.h,v 1.358 2013/02/08 09:17:27 tom Exp $ */
+/* $XTermId: version.h,v 1.359 2013/02/13 00:44:06 tom Exp $ */
/*
* Copyright 1998-2012,2013 by Thomas E. Dickey
@@ -38,8 +38,8 @@
* version of X to which this version of xterm has been built. The resulting
* number in parentheses is my patch number (Thomas E. Dickey).
*/
-#define XTERM_PATCH 289
-#define XTERM_DATE 2013-02-08
+#define XTERM_PATCH 290
+#define XTERM_DATE 2013-02-12
#ifndef __vendorversion__
#define __vendorversion__ "XTerm"
diff --git a/xterm.log.html b/xterm.log.html
index f65916f..46b3387 100644
--- a/xterm.log.html
+++ b/xterm.log.html
@@ -31,7 +31,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
*****************************************************************************
- $XTermId: xterm.log.html,v 1.1315 2013/02/08 09:16:13 tom Exp $
+ $XTermId: xterm.log.html,v 1.1317 2013/02/13 01:58:03 tom Exp $
-->
<html>
@@ -70,6 +70,8 @@
the latest version of this file.</p>
<ul>
+ <li><a href="#xterm_290">Patch #290 - 2013/02/12</a></li>
+
<li><a href="#xterm_289">Patch #289 - 2013/02/08</a></li>
<li><a href="#xterm_288">Patch #288 - 2013/01/09</a></li>
@@ -861,11 +863,21 @@
<li><a href="#xterm_01">Patch #1 - 1996/1/6</a></li>
</ul>
+ <h1><a name="xterm_290" id="xterm_290">Patch #290 -
+ 2013/02/12</a></h1>
+
+ <ul>
+ <li>revert of <a href="#xterm_282">patch #282</a> change was
+ incomplete (report by Jim Reisert).</li>
+
+ <li>fix typo in manpage (report by Vincent Lefevre).</li>
+ </ul>
+
<h1><a name="xterm_289" id="xterm_289">Patch #289 -
2013/02/08</a></h1>
<ul>
- <li>revert the <a href="#xterm_282">patch #282</a> which
+ <li>revert the <a href="#xterm_282">patch #282</a> change which
restored "lost" text after shrinking/growing the screen size.
If the screen was updated between the two resizing operations,
unexpected text might be shown at the end (report/testcase by
diff --git a/xterm.man b/xterm.man
index 91bbac4..5964fff 100644
--- a/xterm.man
+++ b/xterm.man
@@ -1,5 +1,5 @@
'\" t
-.\" $XTermId: xterm.man,v 1.555 2012/12/31 23:36:19 tom Exp $
+.\" $XTermId: xterm.man,v 1.556 2013/02/13 00:47:18 tom Exp $
.\"
.\" Copyright 1996-2011,2012 by Thomas E. Dickey
.\"
@@ -3785,7 +3785,7 @@ Set window/icon labels using hexadecimal
Query window/icon labels using hexadecimal
.TP 5
2
-Set window/icon labels using UTF-8 (overrides \fButf8Titles\fP resource).
+Set window/icon labels using UTF-8 (overrides \fButf8Title\fP resource).
.TP 5
3
Query window/icon labels using UTF-8
commit 33ec1eeb9c037fa55f4c7988e84a9a9beb2581fa
Author: Julien Cristau <jcristau@debian.org>
Date: Sat Feb 23 15:53:41 2013 +0100
Imported Upstream version 289
diff --git a/INSTALL b/INSTALL
index ccd228a..13a18f0 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,4 +1,4 @@
--- $XTermId: INSTALL,v 1.141 2013/01/06 16:28:21 tom Exp $
+-- $XTermId: INSTALL,v 1.142 2013/02/03 19:36:47 tom Exp $
-------------------------------------------------------------------------------
-- Copyright 1997-2012,2013 by Thomas E. Dickey
--
@@ -215,7 +215,7 @@ The options (in alphabetic order):
type. If you do not need input method (and are troubled by the
warning messages), it is safe to disable this option.
- --disable-leaks test: set to test memory leaks
+ --disable-leaks test: free permanent memory, analyze leaks
Compile-in code which frees memory which might confuse a leak-testing
tool. Normally these chunks of memory are retained as long as xterm
@@ -565,6 +565,14 @@ The options (in alphabetic order):
Use --without-app-defaults or --with-app-defaults=no to disable the
feature.
+ --with-dmalloc test: use Gray Watson's dmalloc library
+
+ Check for and link with dmalloc.
+
+ --with-dbmalloc test: use Conor Cahill's dbmalloc library
+
+ Check for and link with dbmalloc.
+
--with-desktop-category=XXX one or more desktop catgories or auto
This is a list of names. The configure script maps blanks and commas
to semicolons (";") which are used by the desktop utils as a separator.
@@ -706,6 +714,11 @@ The options (in alphabetic order):
If xterm is not installed setuid'd to root, this option is not needed,
since it cannot change the tty device's ownership.
+ --with-valgrind test: use valgrind
+
+ Activate the --disable-leaks option, and ensure that "-g" is added to
+ CFLAGS.
+
--with-xpm=DIR use Xpm library for colored icon, may specify path
Use Xpm library to show colored icon in window decoration, e.g.,
diff --git a/MANIFEST b/MANIFEST
index 090dcd8..081a37c 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -1,4 +1,4 @@
-MANIFEST for xterm-288, version xterm-288
+MANIFEST for xterm-289, version xterm-289
--------------------------------------------------------------------------------
MANIFEST this file
256colres.h resource-definitions for 256-color mode
@@ -85,6 +85,7 @@ util.c miscellaneous utility functions for 'xterm'
uxterm wrapper script to make unicode-xterm
uxterm.desktop sample desktop file for uxterm
uxterm.man manpage for uxterm, from Debian
+version.c xterm package version, used also in resize
version.h version of xterm
vms.c VMS version of xterm's spawn(), etc.
vms.h system headers and definitions for vms.c
diff --git a/aclocal.m4 b/aclocal.m4
index 3dfb08a..e3e176b 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1,4 +1,4 @@
-dnl $XTermId: aclocal.m4,v 1.359 2013/01/03 01:37:48 tom Exp $
+dnl $XTermId: aclocal.m4,v 1.360 2013/02/03 19:30:21 tom Exp $
dnl
dnl ---------------------------------------------------------------------------
dnl
@@ -73,31 +73,6 @@ ifdef([m4_version_compare],
AC_PREREQ_CANON(AC_PREREQ_SPLIT([$1])),
AC_PREREQ_CANON(AC_PREREQ_SPLIT(AC_ACVERSION)), AC_ACVERSION, [$2], [$3])])])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_ACVERSION_CHECK version: 3 updated: 2012/10/03 18:39:53
-dnl ------------------
-dnl Conditionally generate script according to whether we're using a given autoconf.
-dnl
-dnl $1 = version to compare against
-dnl $2 = code to use if AC_ACVERSION is at least as high as $1.
-dnl $3 = code to use if AC_ACVERSION is older than $1.
-define([CF_ACVERSION_CHECK],
-[
-ifdef([m4_version_compare],
-[m4_if(m4_version_compare(m4_defn([AC_ACVERSION]), [$1]), -1, [$3], [$2])],
-[CF_ACVERSION_COMPARE(
-AC_PREREQ_CANON(AC_PREREQ_SPLIT([$1])),
-AC_PREREQ_CANON(AC_PREREQ_SPLIT(AC_ACVERSION)), AC_ACVERSION, [$2], [$3])])])dnl
-dnl ---------------------------------------------------------------------------
-dnl CF_ACVERSION_COMPARE version: 3 updated: 2012/10/03 18:39:53
-dnl --------------------
-dnl CF_ACVERSION_COMPARE(MAJOR1, MINOR1, TERNARY1,
-dnl MAJOR2, MINOR2, TERNARY2,
-dnl PRINTABLE2, not FOUND, FOUND)
-define([CF_ACVERSION_COMPARE],
-[ifelse(builtin([eval], [$2 < $5]), 1,
-[ifelse([$8], , ,[$8])],
-[ifelse([$9], , ,[$9])])])dnl
-dnl ---------------------------------------------------------------------------
dnl CF_ACVERSION_COMPARE version: 3 updated: 2012/10/03 18:39:53
dnl --------------------
dnl CF_ACVERSION_COMPARE(MAJOR1, MINOR1, TERNARY1,
@@ -500,6 +475,29 @@ AC_SUBST(SHOW_CC)
AC_SUBST(ECHO_CC)
])dnl
dnl ---------------------------------------------------------------------------
+dnl CF_DISABLE_LEAKS version: 7 updated: 2012/10/02 20:55:03
+dnl ----------------
+dnl Combine no-leak checks with the libraries or tools that are used for the
+dnl checks.
+AC_DEFUN([CF_DISABLE_LEAKS],[
+
+AC_REQUIRE([CF_WITH_DMALLOC])
+AC_REQUIRE([CF_WITH_DBMALLOC])
+AC_REQUIRE([CF_WITH_VALGRIND])
+
+AC_MSG_CHECKING(if you want to perform memory-leak testing)
+AC_ARG_ENABLE(leaks,
+ [ --disable-leaks test: free permanent memory, analyze leaks],
+ [if test "x$enableval" = xno; then with_no_leaks=yes; else with_no_leaks=no; fi],
+ : ${with_no_leaks:=no})
+AC_MSG_RESULT($with_no_leaks)
+
+if test "$with_no_leaks" = yes ; then
+ AC_DEFINE(NO_LEAKS,1,[Define to 1 if you want to perform memory-leak testing.])
+ AC_DEFINE(YY_NO_LEAKS,1,[Define to 1 if you want to perform memory-leak testing.])
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
dnl CF_DISABLE_RPATH_HACK version: 2 updated: 2011/02/13 13:31:33
dnl ---------------------
dnl The rpath-hack makes it simpler to build programs, particularly with the
@@ -1480,6 +1478,35 @@ AC_DEFUN([CF_MSG_LOG],[
echo "${as_me:-configure}:__oline__: testing $* ..." 1>&AC_FD_CC
])dnl
dnl ---------------------------------------------------------------------------
+dnl CF_NO_LEAKS_OPTION version: 5 updated: 2012/10/02 20:55:03
+dnl ------------------
+dnl see CF_WITH_NO_LEAKS
+AC_DEFUN([CF_NO_LEAKS_OPTION],[
+AC_MSG_CHECKING(if you want to use $1 for testing)
+AC_ARG_WITH($1,
+ [$2],
+ [AC_DEFINE_UNQUOTED($3,1,"Define to 1 if you want to use $1 for testing.")ifelse([$4],,[
+ $4
+])
+ : ${with_cflags:=-g}
+ : ${with_no_leaks:=yes}
+ with_$1=yes],
+ [with_$1=])
+AC_MSG_RESULT(${with_$1:-no})
+
+case .$with_cflags in #(vi
+.*-g*)
+ case .$CFLAGS in #(vi
+ .*-g*) #(vi
+ ;;
+ *)
+ CF_ADD_CFLAGS([-g])
+ ;;
+ esac
+ ;;
+esac
+])dnl
+dnl ---------------------------------------------------------------------------
dnl CF_PATHSEP version: 6 updated: 2012/09/29 18:38:12
dnl ----------
dnl Provide a value for the $PATH and similar separator (or amend the value
@@ -2987,6 +3014,21 @@ fi
AC_SUBST(no_appsdir)
])dnl
dnl ---------------------------------------------------------------------------
+dnl CF_WITH_DBMALLOC version: 7 updated: 2010/06/21 17:26:47
+dnl ----------------
+dnl Configure-option for dbmalloc. The optional parameter is used to override
+dnl the updating of $LIBS, e.g., to avoid conflict with subsequent tests.
+AC_DEFUN([CF_WITH_DBMALLOC],[
+CF_NO_LEAKS_OPTION(dbmalloc,
+ [ --with-dbmalloc test: use Conor Cahill's dbmalloc library],
+ [USE_DBMALLOC])
+
+if test "$with_dbmalloc" = yes ; then
+ AC_CHECK_HEADER(dbmalloc.h,
+ [AC_CHECK_LIB(dbmalloc,[debug_malloc]ifelse([$1],,[],[,$1]))])
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
dnl CF_WITH_DESKTOP_CATEGORY version: 4 updated: 2013/01/01 10:50:14
dnl ------------------------
dnl Taking into account the absence of standardization of desktop categories
@@ -3086,6 +3128,21 @@ then
fi
])
dnl ---------------------------------------------------------------------------
+dnl CF_WITH_DMALLOC version: 7 updated: 2010/06/21 17:26:47
+dnl ---------------
+dnl Configure-option for dmalloc. The optional parameter is used to override
+dnl the updating of $LIBS, e.g., to avoid conflict with subsequent tests.
+AC_DEFUN([CF_WITH_DMALLOC],[
+CF_NO_LEAKS_OPTION(dmalloc,
+ [ --with-dmalloc test: use Gray Watson's dmalloc library],
+ [USE_DMALLOC])
+
+if test "$with_dmalloc" = yes ; then
+ AC_CHECK_HEADER(dmalloc.h,
+ [AC_CHECK_LIB(dmalloc,[dmalloc_debug]ifelse([$1],,[],[,$1]))])
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
dnl CF_WITH_ICONDIR version: 5 updated: 2012/07/22 09:18:02
dnl ---------------
dnl Handle configure option "--with-icondir", setting these shell variables:
@@ -3463,6 +3520,14 @@ fi
AC_SUBST(no_pixmapdir)
])dnl
dnl ---------------------------------------------------------------------------
+dnl CF_WITH_VALGRIND version: 1 updated: 2006/12/14 18:00:21
+dnl ----------------
+AC_DEFUN([CF_WITH_VALGRIND],[
+CF_NO_LEAKS_OPTION(valgrind,
+ [ --with-valgrind test: use valgrind],
+ [USE_VALGRIND])
+])dnl
+dnl ---------------------------------------------------------------------------
dnl CF_WITH_XPM version: 3 updated: 2012/10/04 06:57:36
dnl -----------
dnl Test for Xpm library, update compiler/loader flags if it is wanted and
diff --git a/button.c b/button.c
index eadf230..98e9ecb 100644
--- a/button.c
+++ b/button.c
@@ -1,7 +1,7 @@
-/* $XTermId: button.c,v 1.446 2013/01/08 09:34:42 tom Exp $ */
+/* $XTermId: button.c,v 1.451 2013/02/06 09:56:15 tom Exp $ */
/*
- * Copyright 1999-2011,2012 by Thomas E. Dickey
+ * Copyright 1999-2012,2013 by Thomas E. Dickey
*
* All Rights Reserved
*
@@ -1320,10 +1320,11 @@ xtermUtf8ToTextList(XtermWidget xw,
for (i = 0; i < (*text_list_count); ++i) {
data = (Char *) (*text_list)[i];
size = strlen((*text_list)[i]) + 1;
- data = UTF8toLatin1(screen, data, size, &size);
- memcpy(tmp, data, size + 1);
- new_text_list[i] = tmp;
- tmp += size + 1;
+ if ((data = UTF8toLatin1(screen, data, size, &size)) != 0) {
+ memcpy(tmp, data, size + 1);
+ new_text_list[i] = tmp;
+ tmp += size + 1;
+ }
}
XFreeStringList((*text_list));
*text_list = new_text_list;
@@ -4188,15 +4189,21 @@ BtnCode(XButtonEvent * event, int button)
{
int result = (int) (32 + (KeyState(event->state) << 2));
+ if (event->type == MotionNotify)
+ result += 32;
+
if (button < 0 || button > 5) {
result += 3;
} else {
if (button > 3)
result += (64 - 4);
- if (event->type == MotionNotify)
- result += 32;
result += button;
}
+ TRACE(("BtnCode button %d, %s state " FMT_MODIFIER_NAMES " ->%#x\n",
+ button,
+ visibleEventType(event->type),
+ ARG_MODIFIER_NAMES(event->state),
+ result));
return result;
}
@@ -4237,6 +4244,22 @@ EmitButtonCode(TScreen * screen,
return count;
}
+static int
+FirstBitN(int bits)
+{
+ int result = -1;
+ if (bits > 0) {
+ result = 0;
+ while (!(bits & 1)) {
+ bits /= 2;
+ ++result;
+ }
+ }
+ return result;
+}
+
+#define ButtonBit(button) ((button >= 0) ? (1 << (button)) : 0)
+
#define EMIT_BUTTON(button) EmitButtonCode(screen, line, count, event, button)
static void
@@ -4313,7 +4336,7 @@ EditorButton(XtermWidget xw, XButtonEvent * event)
/* Button-Motion events */
switch (event->type) {
case ButtonPress:
- screen->mouse_button = button;
+ screen->mouse_button |= ButtonBit(button);
count = EMIT_BUTTON(button);
break;
case ButtonRelease:
@@ -4323,6 +4346,7 @@ EditorButton(XtermWidget xw, XButtonEvent * event)
* release for buttons 1..3 to a -1, which will be later mapped
* into a "0" (some button was released).
*/
+ screen->mouse_button &= ~ButtonBit(button);
if (button < 3) {
switch (screen->extend_coords) {
case SET_SGR_EXT_MODE_MOUSE:
@@ -4333,7 +4357,6 @@ EditorButton(XtermWidget xw, XButtonEvent * event)
break;
}
}
- screen->mouse_button = button;
count = EMIT_BUTTON(button);
break;
case MotionNotify:
@@ -4344,7 +4367,7 @@ EditorButton(XtermWidget xw, XButtonEvent * event)
&& (col == screen->mouse_col)) {
changed = False;
} else {
- count = EMIT_BUTTON(screen->mouse_button);
+ count = EMIT_BUTTON(FirstBitN(screen->mouse_button));
}
break;
default:
@@ -4815,9 +4838,11 @@ expandFormat(XtermWidget xw,
static void
executeCommand(char **argv)
{
- if (fork() == 0) {
- execvp(argv[0], argv);
- exit(EXIT_FAILURE);
+ if (argv != 0 && argv[0] != 0) {
+ if (fork() == 0) {
+ execvp(argv[0], argv);
+ exit(EXIT_FAILURE);
+ }
}
}
@@ -4957,8 +4982,8 @@ HandleInsertSelectable(Widget w,
free(exps);
}
free(data);
- free(temp);
}
+ free(temp);
}
}
}
diff --git a/charproc.c b/charproc.c
index 336d670..63ef021 100644
--- a/charproc.c
+++ b/charproc.c
@@ -1,7 +1,7 @@
-/* $XTermId: charproc.c,v 1.1280 2013/01/08 01:37:28 tom Exp $ */
+/* $XTermId: charproc.c,v 1.1283 2013/02/05 01:47:58 tom Exp $ */
/*
- * Copyright 1999-2011,2012 by Thomas E. Dickey
+ * Copyright 1999-2012,2013 by Thomas E. Dickey
*
* All Rights Reserved
*
@@ -4352,7 +4352,7 @@ in_put(XtermWidget xw)
#endif
}
if (need_cleanup)
- Cleanup(0);
+ NormalExit();
#if OPT_DOUBLE_BUFFER
if (screen->needSwap) {
XdbeSwapInfo swap;
@@ -7029,7 +7029,7 @@ set_flags_from_list(char *target,
Cardinal n;
int value = -1;
- while (*source != '\0') {
+ while (!IsEmpty(source)) {
char *next = ParseList(&source);
Boolean found = False;
@@ -7261,7 +7261,7 @@ VTInitialize(Widget wrequest,
TRACE((" Actual foreground 0x%06lx\n", wnew->old_foreground));
TRACE((" Actual background 0x%06lx\n", wnew->old_background));
- TScreenOf(wnew)->mouse_button = -1;
+ TScreenOf(wnew)->mouse_button = 0;
TScreenOf(wnew)->mouse_row = -1;
TScreenOf(wnew)->mouse_col = -1;
diff --git a/configure b/configure
index a1914d2..4ef1f1b 100755
--- a/configure
+++ b/configure
@@ -783,7 +783,10 @@ Optional Features:
--disable-ziconbeep disable -ziconbeep option
Testing/development Options:
--enable-trace test: set to enable debugging traces
- --disable-leaks test: set to test memory leaks
+ --with-dmalloc test: use Gray Watson's dmalloc library
+ --with-dbmalloc test: use Conor Cahill's dbmalloc library
+ --with-valgrind test: use valgrind
+ --disable-leaks test: free permanent memory, analyze leaks
--disable-echo do not display "compiling" commands
--enable-xmc-glitch test: enable xmc magic-cookie emulation
--enable-warnings test: turn on GCC compiler warnings
@@ -981,7 +984,7 @@ if test -z "$CONFIG_SITE"; then
fi
for ac_site_file in $CONFIG_SITE; do
if test -r "$ac_site_file"; then
- { echo "$as_me:984: loading site script $ac_site_file" >&5
+ { echo "$as_me:987: loading site script $ac_site_file" >&5
echo "$as_me: loading site script $ac_site_file" >&6;}
cat "$ac_site_file" >&5
. "$ac_site_file"
@@ -992,7 +995,7 @@ if test -r "$cache_file"; then
# Some versions of bash will fail to source /dev/null (special
# files actually), so we avoid doing that.
if test -f "$cache_file"; then
- { echo "$as_me:995: loading cache $cache_file" >&5
+ { echo "$as_me:998: loading cache $cache_file" >&5
echo "$as_me: loading cache $cache_file" >&6;}
case $cache_file in
[\\/]* | ?:[\\/]* ) . $cache_file;;
@@ -1000,7 +1003,7 @@ echo "$as_me: loading cache $cache_file" >&6;}
esac
fi
else
- { echo "$as_me:1003: creating cache $cache_file" >&5
+ { echo "$as_me:1006: creating cache $cache_file" >&5
echo "$as_me: creating cache $cache_file" >&6;}
>$cache_file
fi
@@ -1016,21 +1019,21 @@ for ac_var in `(set) 2>&1 |
eval ac_new_val="\$ac_env_${ac_var}_value"
case $ac_old_set,$ac_new_set in
set,)
- { echo "$as_me:1019: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
+ { echo "$as_me:1022: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
ac_cache_corrupted=: ;;
,set)
- { echo "$as_me:1023: error: \`$ac_var' was not set in the previous run" >&5
+ { echo "$as_me:1026: error: \`$ac_var' was not set in the previous run" >&5
echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
ac_cache_corrupted=: ;;
,);;
*)
if test "x$ac_old_val" != "x$ac_new_val"; then
- { echo "$as_me:1029: error: \`$ac_var' has changed since the previous run:" >&5
+ { echo "$as_me:1032: error: \`$ac_var' has changed since the previous run:" >&5
echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
- { echo "$as_me:1031: former value: $ac_old_val" >&5
+ { echo "$as_me:1034: former value: $ac_old_val" >&5
echo "$as_me: former value: $ac_old_val" >&2;}
- { echo "$as_me:1033: current value: $ac_new_val" >&5
+ { echo "$as_me:1036: current value: $ac_new_val" >&5
echo "$as_me: current value: $ac_new_val" >&2;}
ac_cache_corrupted=:
fi;;
@@ -1049,9 +1052,9 @@ echo "$as_me: current value: $ac_new_val" >&2;}
fi
done
if $ac_cache_corrupted; then
- { echo "$as_me:1052: error: changes in the environment can compromise the build" >&5
+ { echo "$as_me:1055: error: changes in the environment can compromise the build" >&5
echo "$as_me: error: changes in the environment can compromise the build" >&2;}
- { { echo "$as_me:1054: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
+ { { echo "$as_me:1057: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -1072,10 +1075,10 @@ esac
echo "#! $SHELL" >conftest.sh
echo "exit 0" >>conftest.sh
chmod +x conftest.sh
-if { (echo "$as_me:1075: PATH=\".;.\"; conftest.sh") >&5
+if { (echo "$as_me:1078: PATH=\".;.\"; conftest.sh") >&5
(PATH=".;."; conftest.sh) 2>&5
ac_status=$?
- echo "$as_me:1078: \$? = $ac_status" >&5
+ echo "$as_me:1081: \$? = $ac_status" >&5
(exit $ac_status); }; then
ac_path_separator=';'
else
@@ -1103,7 +1106,7 @@ for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
fi
done
if test -z "$ac_aux_dir"; then
- { { echo "$as_me:1106: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5
+ { { echo "$as_me:1109: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5
echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -1113,11 +1116,11 @@ ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
# Make sure we can run config.sub.
$ac_config_sub sun4 >/dev/null 2>&1 ||
- { { echo "$as_me:1116: error: cannot run $ac_config_sub" >&5
+ { { echo "$as_me:1119: error: cannot run $ac_config_sub" >&5
echo "$as_me: error: cannot run $ac_config_sub" >&2;}
{ (exit 1); exit 1; }; }
-echo "$as_me:1120: checking build system type" >&5
+echo "$as_me:1123: checking build system type" >&5
echo $ECHO_N "checking build system type... $ECHO_C" >&6
if test "${ac_cv_build+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1126,16 +1129,16 @@ else
test -z "$ac_cv_build_alias" &&
ac_cv_build_alias=`$ac_config_guess`
test -z "$ac_cv_build_alias" &&
- { { echo "$as_me:1129: error: cannot guess build type; you must specify one" >&5
+ { { echo "$as_me:1132: error: cannot guess build type; you must specify one" >&5
echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
{ (exit 1); exit 1; }; }
ac_cv_build=`$ac_config_sub $ac_cv_build_alias` ||
- { { echo "$as_me:1133: error: $ac_config_sub $ac_cv_build_alias failed." >&5
+ { { echo "$as_me:1136: error: $ac_config_sub $ac_cv_build_alias failed." >&5
echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed." >&2;}
{ (exit 1); exit 1; }; }
fi
-echo "$as_me:1138: result: $ac_cv_build" >&5
+echo "$as_me:1141: result: $ac_cv_build" >&5
echo "${ECHO_T}$ac_cv_build" >&6
build=$ac_cv_build
build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
@@ -1143,7 +1146,7 @@ build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
if test -f $srcdir/config.guess || test -f $ac_aux_dir/config.guess ; then
- echo "$as_me:1146: checking host system type" >&5
+ echo "$as_me:1149: checking host system type" >&5
echo $ECHO_N "checking host system type... $ECHO_C" >&6
if test "${ac_cv_host+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1152,12 +1155,12 @@ else
test -z "$ac_cv_host_alias" &&
ac_cv_host_alias=$ac_cv_build_alias
ac_cv_host=`$ac_config_sub $ac_cv_host_alias` ||
- { { echo "$as_me:1155: error: $ac_config_sub $ac_cv_host_alias failed" >&5
+ { { echo "$as_me:1158: error: $ac_config_sub $ac_cv_host_alias failed" >&5
echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;}
{ (exit 1); exit 1; }; }
fi
-echo "$as_me:1160: result: $ac_cv_host" >&5
+echo "$as_me:1163: result: $ac_cv_host" >&5
echo "${ECHO_T}$ac_cv_host" >&6
host=$ac_cv_host
host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
@@ -1183,13 +1186,13 @@ else
fi
test -z "$system_name" && system_name="$cf_cv_system_name"
-test -n "$cf_cv_system_name" && echo "$as_me:1186: result: Configuring for $cf_cv_system_name" >&5
+test -n "$cf_cv_system_name" && echo "$as_me:1189: result: Configuring for $cf_cv_system_name" >&5
echo "${ECHO_T}Configuring for $cf_cv_system_name" >&6
if test ".$system_name" != ".$cf_cv_system_name" ; then
- echo "$as_me:1190: result: Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&5
+ echo "$as_me:1193: result: Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&5
echo "${ECHO_T}Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&6
- { { echo "$as_me:1192: error: \"Please remove config.cache and try again.\"" >&5
+ { { echo "$as_me:1195: error: \"Please remove config.cache and try again.\"" >&5
echo "$as_me: error: \"Please remove config.cache and try again.\"" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -1214,7 +1217,7 @@ ac_main_return=return
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
set dummy ${ac_tool_prefix}gcc; ac_word=$2
-echo "$as_me:1217: checking for $ac_word" >&5
+echo "$as_me:1220: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_CC+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1229,7 +1232,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_CC="${ac_tool_prefix}gcc"
-echo "$as_me:1232: found $ac_dir/$ac_word" >&5
+echo "$as_me:1235: found $ac_dir/$ac_word" >&5
break
done
@@ -1237,10 +1240,10 @@ fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- echo "$as_me:1240: result: $CC" >&5
+ echo "$as_me:1243: result: $CC" >&5
echo "${ECHO_T}$CC" >&6
else
- echo "$as_me:1243: result: no" >&5
+ echo "$as_me:1246: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -1249,7 +1252,7 @@ if test -z "$ac_cv_prog_CC"; then
ac_ct_CC=$CC
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
-echo "$as_me:1252: checking for $ac_word" >&5
+echo "$as_me:1255: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1264,7 +1267,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_CC="gcc"
-echo "$as_me:1267: found $ac_dir/$ac_word" >&5
+echo "$as_me:1270: found $ac_dir/$ac_word" >&5
break
done
@@ -1272,10 +1275,10 @@ fi
fi
ac_ct_CC=$ac_cv_prog_ac_ct_CC
if test -n "$ac_ct_CC"; then
- echo "$as_me:1275: result: $ac_ct_CC" >&5
+ echo "$as_me:1278: result: $ac_ct_CC" >&5
echo "${ECHO_T}$ac_ct_CC" >&6
else
- echo "$as_me:1278: result: no" >&5
+ echo "$as_me:1281: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -1288,7 +1291,7 @@ if test -z "$CC"; then
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
set dummy ${ac_tool_prefix}cc; ac_word=$2
-echo "$as_me:1291: checking for $ac_word" >&5
+echo "$as_me:1294: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_CC+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1303,7 +1306,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_CC="${ac_tool_prefix}cc"
-echo "$as_me:1306: found $ac_dir/$ac_word" >&5
+echo "$as_me:1309: found $ac_dir/$ac_word" >&5
break
done
@@ -1311,10 +1314,10 @@ fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- echo "$as_me:1314: result: $CC" >&5
+ echo "$as_me:1317: result: $CC" >&5
echo "${ECHO_T}$CC" >&6
else
- echo "$as_me:1317: result: no" >&5
+ echo "$as_me:1320: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -1323,7 +1326,7 @@ if test -z "$ac_cv_prog_CC"; then
ac_ct_CC=$CC
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
-echo "$as_me:1326: checking for $ac_word" >&5
+echo "$as_me:1329: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1338,7 +1341,7 @@ for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
$as_executable_p "$ac_dir/$ac_word" || continue
ac_cv_prog_ac_ct_CC="cc"
-echo "$as_me:1341: found $ac_dir/$ac_word" >&5
+echo "$as_me:1344: found $ac_dir/$ac_word" >&5
break
done
@@ -1346,10 +1349,10 @@ fi
fi
ac_ct_CC=$ac_cv_prog_ac_ct_CC
if test -n "$ac_ct_CC"; then
- echo "$as_me:1349: result: $ac_ct_CC" >&5
+ echo "$as_me:1352: result: $ac_ct_CC" >&5
echo "${ECHO_T}$ac_ct_CC" >&6
else
- echo "$as_me:1352: result: no" >&5
+ echo "$as_me:1355: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -1362,7 +1365,7 @@ fi
if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
-echo "$as_me:1365: checking for $ac_word" >&5
+echo "$as_me:1368: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_CC+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1382,7 +1385,7 @@ if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
continue
fi
ac_cv_prog_CC="cc"
-echo "$as_me:1385: found $ac_dir/$ac_word" >&5
+echo "$as_me:1388: found $ac_dir/$ac_word" >&5
break
done
@@ -1404,10 +1407,10 @@ fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- echo "$as_me:1407: result: $CC" >&5
+ echo "$as_me:1410: result: $CC" >&5
echo "${ECHO_T}$CC" >&6
else
- echo "$as_me:1410: result: no" >&5
+ echo "$as_me:1413: result: no" >&5
echo "${ECHO_T}no" >&6
fi
@@ -1418,7 +1421,7 @@ if test -z "$CC"; then
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-echo "$as_me:1421: checking for $ac_word" >&5
+echo "$as_me:1424: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_CC+set}" = set; then
Reply to: