INSTALL | 20 MANIFEST | 2 Makefile.in | 9 VTPrsTbl.c | 20 VTparse.h | 7 aclocal.m4 | 128 + charproc.c | 100 - configure | 4084 +++++++++++++++++++++++++---------------------- configure.in | 24 ctlseqs.ms | 38 ctlseqs.txt | 30 fontutils.c | 63 input.c | 10 menu.c | 6 minstall.in | 5 misc.c | 29 package/debian/changelog | 6 package/debian/copyright | 2 package/freebsd/Makefile | 2 package/xterm.spec | 4 ptyx.h | 7 screen.c | 20 trace.c | 6 trace.h | 8 util.c | 165 + version.h | 8 vttests/resize.pl | 2 xterm.h | 19 xterm.log.html | 111 + xterm.man | 140 + xtermcfg.hin | 6 31 files changed, 2964 insertions(+), 2117 deletions(-)
New commits: commit 281b51a36eb78b1c42f8c82f30b323d4cc15c72c Author: Sven Joachim <svenj...@gmx.de> Date: Wed Mar 4 17:00:29 2015 +0100 Imported Upstream version 315 diff --git a/INSTALL b/INSTALL index ed0ff37..1b6def9 100644 --- a/INSTALL +++ b/INSTALL @@ -1,6 +1,6 @@ --- $XTermId: INSTALL,v 1.154 2014/12/22 10:16:18 tom Exp $ +-- $XTermId: INSTALL,v 1.156 2015/02/11 10:17:08 tom Exp $ ------------------------------------------------------------------------------- --- Copyright 1997-2013,2014 by Thomas E. Dickey +-- Copyright 1997-2014,2015 by Thomas E. Dickey -- -- All Rights Reserved -- @@ -392,6 +392,18 @@ The options (in alphabetic order): appear to freeze. This workaround makes xterm ignore the strings, and is compiled-in by default for Linux. + --enable-builtin-xpms allow broken Linux OSC-strings], + + Compile-in X pixmap data for these icons: + filled-xterm + mini.xterm + xterm-color + xterm + at these sizes + 16x16 + 32x32 + 48x48 + --enable-dabbrev enable dynamic-abbreviation support Compile-in support for "dabbrev-expand()" action and related key @@ -432,6 +444,10 @@ The options (in alphabetic order): Compile-in code to support HP-style function keys. + --enable-initial-erase set default ptyInitialErase resource (default: false) + + This sets the default resource value, which is shown in the manpage. + --enable-load-vt-fonts enable load-vt-fonts() action Compile-in code that allows user to define load different VT-font diff --git a/MANIFEST b/MANIFEST index e135d9e..c9694e3 100644 --- a/MANIFEST +++ b/MANIFEST @@ -1,4 +1,4 @@ -MANIFEST for xterm-314, version xterm-314 +MANIFEST for xterm-315, version xterm-315 -------------------------------------------------------------------------------- MANIFEST this file 256colres.h resource-definitions for 256-color mode diff --git a/Makefile.in b/Makefile.in index f4198a8..5064a12 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1,8 +1,8 @@ -## $XTermId: Makefile.in,v 1.233 2014/12/22 22:36:43 tom Exp $ +## $XTermId: Makefile.in,v 1.234 2015/02/12 09:31:30 tom Exp $ # ----------------------------------------------------------------------------- # this file is part of xterm # -# Copyright 1997-2013,2014 by Thomas E. Dickey +# Copyright 1997-2014,2015 by Thomas E. Dickey # # All Rights Reserved # @@ -507,13 +507,16 @@ distclean :: clean distclean \ docs-clean :: - -$(RM) *.ps *.pdf *.png man2html.tmp + -$(RM) *.ps *.pdf *.png -$(SHELL) -c 'for p in xterm resize uxterm koi8rxterm; \ do \ $(RM) $$p.html $$p.$(manext) $$p.txt; \ done' -$(RM) ctlseqs.html ctlseqs.$(manext) +distclean :: + -$(RM) man2html.tmp + realclean : distclean -$(RM) tags TAGS diff --git a/VTPrsTbl.c b/VTPrsTbl.c index 41e7901..f9868c4 100644 --- a/VTPrsTbl.c +++ b/VTPrsTbl.c @@ -1,7 +1,7 @@ -/* $XTermId: VTPrsTbl.c,v 1.79 2014/05/02 23:32:27 tom Exp $ */ +/* $XTermId: VTPrsTbl.c,v 1.81 2015/02/16 01:51:51 tom Exp $ */ /* - * Copyright 1999-2013,2014 by Thomas E. Dickey + * Copyright 1999-2014,2015 by Thomas E. Dickey * * All Rights Reserved * @@ -61,8 +61,14 @@ #endif #if !OPT_DEC_LOCATOR -#undef CASE_CSI_TICK_STATE -#define CASE_CSI_TICK_STATE CASE_CSI_IGNORE +#undef CASE_DECEFR +#define CASE_DECEFR CASE_CSI_IGNORE +#undef CASE_DECELR +#define CASE_DECELR CASE_CSI_IGNORE +#undef CASE_DECSLE +#define CASE_DECSLE CASE_CSI_IGNORE +#undef CASE_DECRQLP +#define CASE_DECRQLP CASE_CSI_IGNORE #endif #if !OPT_WIDE_CHARS @@ -454,7 +460,7 @@ CASE_CSI_EX_STATE, CASE_CSI_QUOTE_STATE, CASE_CSI_IGNORE, /* $ % & ' */ -CASE_CSI_IGNORE, +CASE_CSI_DOLLAR_STATE, CASE_CSI_IGNORE, CASE_CSI_IGNORE, CASE_CSI_TICK_STATE, @@ -614,7 +620,7 @@ CASE_CSI_EX_STATE, CASE_CSI_QUOTE_STATE, CASE_CSI_IGNORE, /* currency yen brokenbar section */ -CASE_CSI_IGNORE, +CASE_CSI_DOLLAR_STATE, CASE_CSI_IGNORE, CASE_CSI_IGNORE, CASE_CSI_TICK_STATE, @@ -2028,7 +2034,6 @@ CASE_IGNORE, }; #endif -#if OPT_DEC_LOCATOR Const PARSE_T csi_tick_table[] = /* CSI ... ' */ { /* NUL SOH STX ETX */ @@ -2352,7 +2357,6 @@ CASE_DECIC, CASE_DECDC, CASE_IGNORE, }; -#endif /* OPT_DEC_LOCATOR */ #if OPT_DEC_RECTOPS Const PARSE_T csi_dollar_table[] = /* CSI ... $ */ diff --git a/VTparse.h b/VTparse.h index f49a805..7f9170e 100644 --- a/VTparse.h +++ b/VTparse.h @@ -1,7 +1,7 @@ -/* $XTermId: VTparse.h,v 1.64 2014/04/25 21:37:35 tom Exp $ */ +/* $XTermId: VTparse.h,v 1.65 2015/02/16 00:10:39 tom Exp $ */ /* - * Copyright 2002-2013,2014 by Thomas E. Dickey + * Copyright 2002-2014,2015 by Thomas E. Dickey * * All Rights Reserved * @@ -88,10 +88,7 @@ extern Const PARSE_T scs96table[]; extern Const PARSE_T scstable[]; extern Const PARSE_T sos_table[]; extern Const PARSE_T csi_dec_dollar_table[]; - -#if OPT_DEC_LOCATOR extern Const PARSE_T csi_tick_table[]; -#endif /* OPT_DEC_LOCATOR */ #if OPT_DEC_RECTOPS extern Const PARSE_T csi_dollar_table[]; diff --git a/aclocal.m4 b/aclocal.m4 index 07d7633..4d808cd 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -1,8 +1,8 @@ -dnl $XTermId: aclocal.m4,v 1.385 2014/12/22 21:38:37 tom Exp $ +dnl $XTermId: aclocal.m4,v 1.402 2015/03/02 23:51:14 tom Exp $ dnl dnl --------------------------------------------------------------------------- dnl -dnl Copyright 1997-2013,2014 by Thomas E. Dickey +dnl Copyright 1997-2014,2015 by Thomas E. Dickey dnl dnl All Rights Reserved dnl @@ -536,7 +536,7 @@ if test "$cf_disable_rpath_hack" = no ; then fi ]) dnl --------------------------------------------------------------------------- -dnl CF_ENABLE_NARROWPROTO version: 3 updated: 2006/02/12 17:46:00 +dnl CF_ENABLE_NARROWPROTO version: 4 updated: 2015/03/02 18:49:48 dnl --------------------- dnl If this is not set properly, Xaw's scrollbars will not work. dnl The so-called "modular" configuration for X.org omits most of the @@ -547,7 +547,7 @@ AC_DEFUN([CF_ENABLE_NARROWPROTO], AC_MSG_CHECKING(if you want narrow prototypes for X libraries) case `$ac_config_guess` in #(vi -*cygwin*|*freebsd*|*gnu*|*irix5*|*irix6*|*linux-gnu*|*netbsd*|*openbsd*|*qnx*|*sco*|*sgi*) #(vi +*freebsd*|*gnu*|*irix5*|*irix6*|*linux-gnu*|*netbsd*|*openbsd*|*qnx*|*sco*|*sgi*) #(vi cf_default_narrowproto=yes ;; *) @@ -3006,7 +3006,7 @@ AC_MSG_RESULT($APP_CLASS) AC_SUBST(APP_CLASS) ])dnl dnl --------------------------------------------------------------------------- -dnl CF_WITH_APP_DEFAULTS version: 5 updated: 2012/10/04 04:29:52 +dnl CF_WITH_APP_DEFAULTS version: 6 updated: 2015/01/02 09:05:50 dnl -------------------- dnl Handle configure option "--with-app-defaults", setting these shell dnl variables: @@ -3033,6 +3033,9 @@ dnl 32-bit: dnl /usr/X11/etc/X11/app-defaults dnl /usr/X11/share/X11/app-defaults dnl /usr/X11/lib/X11/app-defaults +dnl OSX uses +dnl /opt/local/share/X11/app-defaults (MacPorts) +dnl /opt/X11/share/X11/app-defaults (non-ports) dnl 64-bit: dnl /usr/X11/etc/X11/app-defaults dnl /usr/X11/share/X11/app-defaults (I mkdir'd this) @@ -3051,6 +3054,8 @@ if test "x[$]APPSDIR" = xauto then APPSDIR='${exec_prefix}/lib/X11/app-defaults' for cf_path in \ + /opt/local/share/X11/app-defaults \ + /opt/X11/share/X11/app-defaults \ /usr/share/X11/app-defaults \ /usr/X11/share/X11/app-defaults \ /usr/X11/lib/X11/app-defaults \ @@ -3539,7 +3544,7 @@ else fi ])dnl dnl --------------------------------------------------------------------------- -dnl CF_WITH_MAN2HTML version: 1 updated: 2014/12/22 05:08:33 +dnl CF_WITH_MAN2HTML version: 2 updated: 2015/02/15 12:45:44 dnl ---------------- dnl Check for man2html and groff. Optionally prefer man2html over groff. dnl Generate a shell script which hides the differences between the two. @@ -3554,60 +3559,123 @@ AC_MSG_CHECKING(for program to convert manpage to html) AC_ARG_WITH(man2html, [ --with-man2html=XXX use XXX rather than groff], [cf_man2html=$withval], - [cf_man2html=no]) + [cf_man2html=$GROFF_PATH]) + +cf_with_groff=no case $cf_man2html in #(vi yes) #(vi AC_MSG_RESULT(man2html) AC_PATH_PROG(cf_man2html,man2html,no) - cf_use_man2html=yes ;; -no) #(vi +no|groff|*/groff*) #(vi + cf_with_groff=yes cf_man2html=$GROFF_PATH AC_MSG_RESULT($cf_man2html) - cf_use_man2html=no ;; *) AC_MSG_RESULT($cf_man2html) - cf_use_man2html=yes ;; esac MAN2HTML_TEMP="man2html.tmp" cat >$MAN2HTML_TEMP <<CF_EOF -#!${SHELL} +#!/bin/sh # Temporary script generated by CF_WITH_MAN2HTML # Convert inputs to html, sending result to standard output. - +# +# Parameters: +# $1 = rootname of file to convert +# $2 = suffix of file to convert, e.g., "1" +# $3 = macros to use, e.g., "man" +# ROOT=\[$]1 TYPE=\[$]2 MACS=\[$]3 +unset LANG +unset LC_ALL +unset LC_CTYPE +unset LANGUAGE GROFF_NO_SGR=stupid export GROFF_NO_SGR CF_EOF -if test "x$cf_use_man2html" = xyes +if test "x$cf_with_groff" = xyes then + MAN2HTML_NOTE="$GROFF_NOTE" + MAN2HTML_PATH="$GROFF_PATH" + cat >>$MAN2HTML_TEMP <<CF_EOF +/bin/sh -c "tbl \${ROOT}.\${TYPE} | $GROFF_PATH -P -o0 -I\${ROOT}_ -Thtml -\${MACS}" +CF_EOF +else MAN2HTML_NOTE="" CF_PATH_SYNTAX(cf_man2html) - cat >>$MAN2HTML_TEMP <<-CF_EOF - tbl \${ROOT}.\${TYPE} | nroff -\${MACS} | $cf_man2html + MAN2HTML_PATH="$cf_man2html" + AC_MSG_CHECKING(for $cf_man2html top/bottom margins) + + # for this example, expect 3 lines of content, the remainder is head/foot + cat >conftest.in <<CF_EOF +.TH HEAD1 HEAD2 HEAD3 HEAD4 HEAD5 +.SH SECTION +MARKER CF_EOF -elif test "x$GROFF_PATH" != "xno" -then - MAN2HTML_NOTE="" - cat >>$MAN2HTML_TEMP <<-CF_EOF - tbl \${ROOT}.\${TYPE} | $GROFF_PATH -P -o0 -I\${ROOT}_ -Thtml -\${MACS} + + LC_ALL=C LC_CTYPE=C LANG=C LANGUAGE=C nroff -man conftest.in >conftest.out + + cf_man2html_1st=`fgrep -n MARKER conftest.out |sed -e 's/^[[^0-9]]*://' -e 's/:.*//'` + cf_man2html_top=`expr $cf_man2html_1st - 2` + cf_man2html_bot=`wc -l conftest.out |sed -e 's/[[^0-9]]//g'` + cf_man2html_bot=`expr $cf_man2html_bot - 2 - $cf_man2html_top` + cf_man2html_top_bot="-topm=$cf_man2html_top -botm=$cf_man2html_bot" + + AC_MSG_RESULT($cf_man2html_top_bot) + + AC_MSG_CHECKING(for pagesize to use) + for cf_block in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 + do + cat >>conftest.in <<CF_EOF +.nf +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +CF_EOF + done + + LC_ALL=C LC_CTYPE=C LANG=C LANGUAGE=C nroff -man conftest.in >conftest.out + cf_man2html_page=`fgrep -n HEAD1 conftest.out |tail -n 1 |sed -e 's/^[[^0-9]]*://' -e 's/:.*//'` + test -z "$cf_man2html_page" && cf_man2html_page=99999 + test "$cf_man2html_page" -gt 100 && cf_man2html_page=99999 + + rm -rf conftest* + AC_MSG_RESULT($cf_man2html_page) + + cat >>$MAN2HTML_TEMP <<CF_EOF +: \${MAN2HTML_PATH=$MAN2HTML_PATH} +MAN2HTML_OPTS="\$MAN2HTML_OPTS -index -title="\$ROOT\(\$TYPE\)" -compress -pgsize $cf_man2html_page" +case \${TYPE} in #(vi +ms) #(vi + tbl \${ROOT}.\${TYPE} | nroff -\${MACS} | \$MAN2HTML_PATH -topm=0 -botm=0 \$MAN2HTML_OPTS + ;; +*) + tbl \${ROOT}.\${TYPE} | nroff -\${MACS} | \$MAN2HTML_PATH $cf_man2html_top_bot \$MAN2HTML_OPTS + ;; +esac CF_EOF -else - MAN2HTML_NOTE="#" fi chmod 700 $MAN2HTML_TEMP AC_SUBST(MAN2HTML_NOTE) +AC_SUBST(MAN2HTML_PATH) AC_SUBST(MAN2HTML_TEMP) ])dnl dnl --------------------------------------------------------------------------- @@ -3766,6 +3834,20 @@ AC_DEFINE_UNQUOTED($1,[$]$2,$3) AC_SUBST($2) ]) dnl --------------------------------------------------------------------------- +dnl CF_XINERAMA version: 2 updated: 2015/02/15 15:18:41 +dnl ----------- +AC_DEFUN([CF_XINERAMA],[ +CF_TRY_PKG_CONFIG(xinerama,[ + AC_DEFINE(HAVE_X11_EXTENSIONS_XINERAMA_H)],[ + AC_CHECK_LIB(Xinerama,XineramaQueryScreens, + [CF_ADD_LIB(Xinerama) + AC_CHECK_HEADERS( \ + X11/extensions/Xinerama.h \ + ) + ]) + ]) +])dnl +dnl --------------------------------------------------------------------------- dnl CF_XKB_BELL_EXT version: 4 updated: 2012/10/04 20:12:20 dnl --------------- dnl Check for XKB bell extension diff --git a/charproc.c b/charproc.c index 4e66fa8..50c61b0 100644 --- a/charproc.c +++ b/charproc.c @@ -1,7 +1,7 @@ -/* $XTermId: charproc.c,v 1.1393 2014/12/28 22:12:39 tom Exp $ */ +/* $XTermId: charproc.c,v 1.1407 2015/03/02 11:46:32 tom Exp $ */ /* - * Copyright 1999-2013,2014 by Thomas E. Dickey + * Copyright 1999-2014,2015 by Thomas E. Dickey * * All Rights Reserved * @@ -2711,7 +2711,6 @@ doparsing(XtermWidget xw, unsigned c, struct ParseState *sp) reply.a_param[count++] = 3; /* ReGIS graphics */ } #endif - reply.a_param[count++] = 6; /* selective-erase */ #if OPT_SIXEL_GRAPHICS if (screen->terminal_id == 240 || screen->terminal_id == 241 || @@ -3204,7 +3203,7 @@ doparsing(XtermWidget xw, unsigned c, struct ParseState *sp) reply.a_radix[count] = 16; /* no data */ reply.a_param[count++] = 0; /* no space for macros */ reply.a_inters = '*'; - reply.a_final = '{'; + reply.a_final = L_CURL; } break; case 63: @@ -3322,8 +3321,10 @@ doparsing(XtermWidget xw, unsigned c, struct ParseState *sp) dpmodes(xw, bitset); ResetState(sp); #if OPT_TEK4014 - if (TEK4014_ACTIVE(xw)) + if (TEK4014_ACTIVE(xw)) { + TRACE(("Tek4014 is now active...\n")); return False; + } #endif break; @@ -3558,6 +3559,8 @@ doparsing(XtermWidget xw, unsigned c, struct ParseState *sp) */ if (GetParam(0) >= 61 && GetParam(0) <= 60 + (screen->terminal_id / 100)) { + int new_vtXX_level = GetParam(0) - 60; + int case_value = zero_if_default(1); /* * VT300, VT420, VT520 manuals claim that DECSCL does a * hard reset (RIS). VT220 manual states that it is a soft @@ -3566,9 +3569,9 @@ doparsing(XtermWidget xw, unsigned c, struct ParseState *sp) */ ReallyReset(xw, False, False); init_parser(xw, sp); - screen->vtXX_level = GetParam(0) - 60; - if (GetParam(0) > 61) { - switch (zero_if_default(1)) { + screen->vtXX_level = new_vtXX_level; + if (new_vtXX_level > 1) { + switch (case_value) { case 1: show_8bit_control(False); break; @@ -3770,8 +3773,7 @@ doparsing(XtermWidget xw, unsigned c, struct ParseState *sp) case CASE_DECDC: TRACE(("CASE_DC - delete column\n")); - if (screen->vtXX_level >= 4 - && IsLeftRightMode(xw)) { + if (screen->vtXX_level >= 4) { xtermColScroll(xw, one_if_default(0), True, screen->cur_col); } ResetState(sp); @@ -3779,8 +3781,7 @@ doparsing(XtermWidget xw, unsigned c, struct ParseState *sp) case CASE_DECIC: TRACE(("CASE_IC - insert column\n")); - if (screen->vtXX_level >= 4 - && IsLeftRightMode(xw)) { + if (screen->vtXX_level >= 4) { xtermColScroll(xw, one_if_default(0), False, screen->cur_col); } ResetState(sp); @@ -3869,12 +3870,12 @@ doparsing(XtermWidget xw, unsigned c, struct ParseState *sp) sp->parsestate = csi_ex_table; break; -#if OPT_DEC_LOCATOR case CASE_CSI_TICK_STATE: /* csi tick (') */ sp->parsestate = csi_tick_table; break; +#if OPT_DEC_LOCATOR case CASE_DECEFR: TRACE(("CASE_DECEFR - Enable Filter Rectangle\n")); if (screen->send_mouse_pos == DEC_LOCATOR) { @@ -5000,7 +5001,11 @@ dotext(XtermWidget xw, } width_here -= last_chomp; if (chars_chomped > 0) { - need_wrap = True; + if (!(xw->flags & WRAPAROUND)) { + buf[chars_chomped + offset - 1] = buf[len - 1]; + } else { + need_wrap = True; + } } } else if (width_here == width_available) { need_wrap = True; @@ -5387,6 +5392,7 @@ dpmodes(XtermWidget xw, BitFunc func) if (IsSM() && !(screen->inhibit & I_TEK)) { FlushLog(xw); TEK4014_ACTIVE(xw) = True; + TRACE(("Tek4014 is now active...\n")); update_vttekmode(); } break; @@ -6551,7 +6557,10 @@ window_ops(XtermWidget xw) case ewGetScreenSizeChars: /* Report the screen's size, in characters */ if (AllowWindowOps(xw, ewGetScreenSizeChars)) { TRACE(("...get screen size in characters\n")); - (void) QueryMaximize(xw, &root_height, &root_width); + TRACE(("...using font size %dx%d\n", + FontHeight(screen), + FontWidth(screen))); + (void) QueryMaximize(xw, &root_width, &root_height); init_reply(ANSI_CSI); reply.a_pintro = 0; reply.a_nparam = 3; @@ -7834,7 +7843,7 @@ VTInitialize(Widget wrequest, init_Bres(screen.old_fkeys); wnew->screen.old_fkeys0 = wnew->screen.old_fkeys; - init_Bres(screen.delete_is_del); + init_Mres(screen.delete_is_del); initializeKeyboardType(wnew); #ifdef ALLOWLOGGING init_Bres(misc.logInhibit); @@ -8221,7 +8230,7 @@ VTInitialize(Widget wrequest, init_Tres(HIGHLIGHT_BG); init_Tres(HIGHLIGHT_FG); init_Bres(screen.hilite_reverse); - init_Bres(screen.hilite_color); + init_Mres(screen.hilite_color); if (TScreenOf(wnew)->hilite_color == Maybe) { TScreenOf(wnew)->hilite_color = False; #if OPT_COLOR_RES @@ -9028,8 +9037,8 @@ VTRealize(Widget w, TScreen *screen = TScreenOf(xw); const VTFontNames *myfont; - unsigned width, height; - int xpos, ypos, pr; + struct Xinerama_geometry pos; + int pr; Atom pid_atom; int i; @@ -9113,22 +9122,21 @@ VTRealize(Widget w, } /* set defaults */ - xpos = 1; - ypos = 1; - width = 80; - height = 24; + pos.x = 1; + pos.y = 1; + pos.w = 80; + pos.h = 24; TRACE(("parsing geo_metry %s\n", NonNull(xw->misc.geo_metry))); - pr = XParseGeometry(xw->misc.geo_metry, &xpos, &ypos, - &width, &height); - TRACE(("... position %d,%d size %dx%d\n", ypos, xpos, height, width)); + pr = XParseXineramaGeometry(screen->display, xw->misc.geo_metry, &pos); + TRACE(("... position %d,%d size %dx%d\n", pos.y, pos.x, pos.h, pos.w)); - set_max_col(screen, (int) (width - 1)); /* units in character cells */ - set_max_row(screen, (int) (height - 1)); /* units in character cells */ + set_max_col(screen, (int) (pos.w - 1)); /* units in character cells */ + set_max_row(screen, (int) (pos.h - 1)); /* units in character cells */ xtermUpdateFontInfo(xw, False); - width = screen->fullVwin.fullwidth; - height = screen->fullVwin.fullheight; + pos.w = screen->fullVwin.fullwidth; + pos.h = screen->fullVwin.fullheight; TRACE(("... border widget %d parent %d shell %d\n", BorderWidth(xw), @@ -9136,15 +9144,17 @@ VTRealize(Widget w, BorderWidth(SHELL_OF(xw)))); if ((pr & XValue) && (XNegative & pr)) { - xpos += (DisplayWidth(screen->display, DefaultScreen(screen->display)) - - (int) width - - (BorderWidth(XtParent(xw)) * 2)); + pos.x = (Position) (pos.x + (pos.scr_w + - (int) pos.w + - (BorderWidth(XtParent(xw)) * 2))); } if ((pr & YValue) && (YNegative & pr)) { - ypos += (DisplayHeight(screen->display, DefaultScreen(screen->display)) - - (int) height - - (BorderWidth(XtParent(xw)) * 2)); + pos.y = (Position) (pos.y + (pos.scr_h + - (int) pos.h + - (BorderWidth(XtParent(xw)) * 2))); } + pos.x = (Position) (pos.x + pos.scr_x); + pos.y = (Position) (pos.y + pos.scr_y); /* set up size hints for window manager; min 1 char by 1 char */ getXtermSizeHints(xw); @@ -9153,8 +9163,8 @@ VTRealize(Widget w, + BorderWidth(screen->scrollWidget)) : 0)); - xw->hints.x = xpos; - xw->hints.y = ypos; + xw->hints.x = pos.x; + xw->hints.y = pos.y; #if OPT_MAXIMIZE /* assure single-increment resize for fullscreen */ if (term->work.ewmh[0].mode) { @@ -9198,7 +9208,7 @@ VTRealize(Widget w, * is for the vt100 widget. They are not the same size. */ (void) REQ_RESIZE((Widget) xw, - (Dimension) width, (Dimension) height, + (Dimension) pos.w, (Dimension) pos.h, &xw->core.width, &xw->core.height); /* XXX This is bogus. We are parsing geometries too late. This @@ -10438,13 +10448,15 @@ StopBlinking(TScreen *screen) Bool LineHasBlinking(TScreen *screen, CLineData *ld) { - int col; Bool result = False; + if (ld != 0) { + int col; - for (col = 0; col < MaxCols(screen); ++col) { - if (ld->attribs[col] & BLINK) { - result = True; - break; + for (col = 0; col < MaxCols(screen); ++col) { + if (ld->attribs[col] & BLINK) { + result = True; + break; + } } } return result; diff --git a/configure b/configure index f61b3a5..9ab06f9 100755 --- a/configure +++ b/configure @@ -682,15 +682,14 @@ if test -n "$ac_init_help"; then cat <<\EOF -Optional Packages: - --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] - --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) - Optional Features: --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] - --with-man2html=XXX use XXX rather than groff +Optional Packages: + --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] + --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) + Compile/Install Options: --disable-full-tgetent disable check for full tgetent function --with-app-class=XXX override X applications class (default XTerm) @@ -720,12 +719,14 @@ Compile/Install Options: --with-XawPlus link with Athena-Plus library --enable-narrowproto enable narrow prototypes for X libraries --disable-imake disable use of imake for definitions + --with-man2html=XXX use XXX rather than groff Terminal Configuration: --with-terminal-id=V set default decTerminalID (default: vt420) --with-terminal-type=T set default $TERM (default: xterm) --enable-backarrow-key set default backarrowKey resource (default: true) --enable-backarrow-is-erase set default backarrowKeyIsErase resource (default: false) --enable-delete-is-del set default deleteIsDEL resource (default: maybe) + --enable-initial-erase set default ptyInitialErase resource (default: maybe) --enable-alt-sends-esc set default altSendsEscape resource (default: no) --enable-meta-sends-esc set default metaSendsEscape resource (default: no) --with-own-terminfo=P set default $TERMINFO (default: from environment) @@ -738,6 +739,7 @@ Optional Features: --disable-blink-cursor disable support for blinking cursor --enable-broken-osc allow broken Linux OSC-strings --disable-broken-st disallow broken string-terminators + --enable-builtin-xpms compile-in icon data --disable-c1-print disallow -k8 option for printable 128-159 --disable-bold-color disable PC-style mapping of bold colors --disable-color-class disable separate color class resources @@ -991,7 +993,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:994: loading site script $ac_site_file" >&5 + { echo "$as_me:996: 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" @@ -1002,7 +1004,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:1005: loading cache $cache_file" >&5 + { echo "$as_me:1007: loading cache $cache_file" >&5 echo "$as_me: loading cache $cache_file" >&6;} case $cache_file in [\\/]* | ?:[\\/]* ) . $cache_file;; @@ -1010,7 +1012,7 @@ echo "$as_me: loading cache $cache_file" >&6;} esac fi else - { echo "$as_me:1013: creating cache $cache_file" >&5 + { echo "$as_me:1015: creating cache $cache_file" >&5 echo "$as_me: creating cache $cache_file" >&6;} >$cache_file fi @@ -1026,21 +1028,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:1029: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 + { echo "$as_me:1031: 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:1033: error: \`$ac_var' was not set in the previous run" >&5 + { echo "$as_me:1035: 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:1039: error: \`$ac_var' has changed since the previous run:" >&5 + { echo "$as_me:1041: 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:1041: former value: $ac_old_val" >&5 + { echo "$as_me:1043: former value: $ac_old_val" >&5 echo "$as_me: former value: $ac_old_val" >&2;} - { echo "$as_me:1043: current value: $ac_new_val" >&5 + { echo "$as_me:1045: current value: $ac_new_val" >&5 echo "$as_me: current value: $ac_new_val" >&2;} ac_cache_corrupted=: fi;; @@ -1059,9 +1061,9 @@ echo "$as_me: current value: $ac_new_val" >&2;} fi done if $ac_cache_corrupted; then - { echo "$as_me:1062: error: changes in the environment can compromise the build" >&5 + { echo "$as_me:1064: 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:1064: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 + { { echo "$as_me:1066: 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 @@ -1082,10 +1084,10 @@ esac echo "#! $SHELL" >conftest.sh echo "exit 0" >>conftest.sh chmod +x conftest.sh -if { (echo "$as_me:1085: PATH=\".;.\"; conftest.sh") >&5 +if { (echo "$as_me:1087: PATH=\".;.\"; conftest.sh") >&5 (PATH=".;."; conftest.sh) 2>&5 ac_status=$? - echo "$as_me:1088: \$? = $ac_status" >&5 + echo "$as_me:1090: \$? = $ac_status" >&5 (exit $ac_status); }; then ac_path_separator=';' else @@ -1113,7 +1115,7 @@ for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do fi done if test -z "$ac_aux_dir"; then - { { echo "$as_me:1116: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5 + { { echo "$as_me:1118: 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 @@ -1123,11 +1125,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:1126: error: cannot run $ac_config_sub" >&5 + { { echo "$as_me:1128: error: cannot run $ac_config_sub" >&5 echo "$as_me: error: cannot run $ac_config_sub" >&2;} { (exit 1); exit 1; }; } -echo "$as_me:1130: checking build system type" >&5 +echo "$as_me:1132: 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 @@ -1136,16 +1138,16 @@ else test -z "$ac_cv_build_alias" && ac_cv_build_alias=`$ac_config_guess` test -z "$ac_cv_build_alias" && - { { echo "$as_me:1139: error: cannot guess build type; you must specify one" >&5 + { { echo "$as_me:1141: 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:1143: error: $ac_config_sub $ac_cv_build_alias failed." >&5 + { { echo "$as_me:1145: 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:1148: result: $ac_cv_build" >&5 +echo "$as_me:1150: 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/'` @@ -1153,7 +1155,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:1156: checking host system type" >&5 + echo "$as_me:1158: 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 @@ -1162,12 +1164,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:1165: error: $ac_config_sub $ac_cv_host_alias failed" >&5 + { { echo "$as_me:1167: 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:1170: result: $ac_cv_host" >&5 +echo "$as_me:1172: 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/'` @@ -1193,13 +1195,13 @@ else fi test -z "$system_name" && system_name="$cf_cv_system_name" -test -n "$cf_cv_system_name" && echo "$as_me:1196: result: Configuring for $cf_cv_system_name" >&5 +test -n "$cf_cv_system_name" && echo "$as_me:1198: 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:1200: result: Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&5 + echo "$as_me:1202: 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:1202: error: \"Please remove config.cache and try again.\"" >&5 + { { echo "$as_me:1204: 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 @@ -1224,7 +1226,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:1227: checking for $ac_word" >&5 +echo "$as_me:1229: 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 @@ -1239,7 +1241,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:1242: found $ac_dir/$ac_word" >&5 +echo "$as_me:1244: found $ac_dir/$ac_word" >&5 break done @@ -1247,10 +1249,10 @@ fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - echo "$as_me:1250: result: $CC" >&5 + echo "$as_me:1252: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else - echo "$as_me:1253: result: no" >&5 + echo "$as_me:1255: result: no" >&5 echo "${ECHO_T}no" >&6 fi @@ -1259,7 +1261,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:1262: checking for $ac_word" >&5 +echo "$as_me:1264: 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 @@ -1274,7 +1276,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:1277: found $ac_dir/$ac_word" >&5 +echo "$as_me:1279: found $ac_dir/$ac_word" >&5 break done @@ -1282,10 +1284,10 @@ fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then - echo "$as_me:1285: result: $ac_ct_CC" >&5 + echo "$as_me:1287: result: $ac_ct_CC" >&5 echo "${ECHO_T}$ac_ct_CC" >&6 else - echo "$as_me:1288: result: no" >&5 + echo "$as_me:1290: result: no" >&5 echo "${ECHO_T}no" >&6 fi @@ -1298,7 +1300,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:1301: checking for $ac_word" >&5 +echo "$as_me:1303: 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 @@ -1313,7 +1315,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:1316: found $ac_dir/$ac_word" >&5 +echo "$as_me:1318: found $ac_dir/$ac_word" >&5 break done @@ -1321,10 +1323,10 @@ fi fi CC=$ac_cv_prog_CC -- To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/e1ytedd-0003of...@moszumanska.debian.org