Hello community, here is the log from the commit of package xterm for openSUSE:Factory checked in at 2016-11-25 12:03:47 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/xterm (Old) and /work/SRC/openSUSE:Factory/.xterm.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xterm" Changes: -------- --- /work/SRC/openSUSE:Factory/xterm/xterm.changes 2016-10-14 03:38:40.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.xterm.new/xterm.changes 2016-11-25 12:03:48.000000000 +0100 @@ -1,0 +2,22 @@ +Mon Nov 21 14:54:30 UTC 2016 - pce...@suse.com + +- Patch #327 - 2016/10/07 + * add a check in the function which handles end-of-line + wrapping to ensure that C1 controls are allocated one column + when allowC1Printable is set (Debian #738794). + * use consistent error-checking after strtol calls, fixes a + case where a query with OSC 6 did not ensure there was a + valid color number (report by Alex Smith). + * add -baudrate option, for testing ncurses. + * always generate the CASE_xxx symbols in VTparse.h and + Tekparse.h, as part of a change to improve debug-logging. + This makes the build always depend upon awk. + * modify allowC1Printable to disallow codes 160-254 as being + equivalent to codes 32-126 when parsing escape sequences + (Debian #839220). + * amend fix from patch #326 for TrueType fonts to exclude the + hidden character used for double-width cells (report by Grady + Martin). + * fix a typo in ctlseqs.ms + +------------------------------------------------------------------- Old: ---- xterm-326.tgz xterm-326.tgz.asc New: ---- xterm-327.tgz xterm-327.tgz.asc ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ xterm.spec ++++++ --- /var/tmp/diff_new_pack.w4v5hO/_old 2016-11-25 12:03:49.000000000 +0100 +++ /var/tmp/diff_new_pack.w4v5hO/_new 2016-11-25 12:03:49.000000000 +0100 @@ -19,7 +19,7 @@ %define vttest_version 20140305 %define splitbin 0%{?suse_version} >= 1300 Name: xterm -Version: 326 +Version: 327 Release: 0 Summary: The basic X terminal program License: MIT ++++++ xterm-326.tgz -> xterm-327.tgz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xterm-326/Imakefile new/xterm-327/Imakefile --- old/xterm-326/Imakefile 2016-01-28 02:56:53.000000000 +0100 +++ new/xterm-327/Imakefile 2016-10-06 02:56:32.000000000 +0200 @@ -1,4 +1,4 @@ -XCOMM $XTermId: Imakefile,v 1.112 2016/01/28 01:56:53 Jens.Schweikhardt Exp $ +XCOMM $XTermId: Imakefile,v 1.113 2016/10/06 00:56:32 tom Exp $ XCOMM XCOMM Attention xterm porters XCOMM @@ -244,11 +244,21 @@ AllTarget($(PROGRAMS)) +VTPARSE_H = VTparse.h VTparse.hin +TEKPARSE_H = Tekparse.h Tekparse.hin + +.SUFFIXES : .def .hin +.def.hin : + awk '/^CASE_/{printf "#define %s %d\n", $$1, n++}' < $< >$@ + SpecialCObjectRule(main,$(_NOOP_),$(MAIN_DEFINES)) SpecialCObjectRule(menu,$(_NOOP_),$(MISC_DEFINES)) -SpecialCObjectRule(misc,$(_NOOP_),$(MISC_DEFINES)) -SpecialCObjectRule(charproc,$(_NOOP_),$(MISC_DEFINES)) +SpecialCObjectRule(misc,$(VTPARSE_H),$(MISC_DEFINES)) +SpecialCObjectRule(VTPrsTbl,$(VTPARSE_H),$(MISC_DEFINES)) +SpecialCObjectRule(charproc,$(VTPARSE_H),$(MISC_DEFINES)) SpecialCObjectRule(data,$(_NOOP_),$(MISC_DEFINES)) +SpecialCObjectRule(TekPrsTbl,$(TEKPARSE_H),$(MISC_DEFINES)) +SpecialCObjectRule(TekProc,$(TEKPARSE_H),$(MISC_DEFINES)) #if InstallXtermSetUID SetUIDProgramTarget(xterm,$(OBJS1),$(DEPLIBS1),$(XRFLIBS) XkbClientLibs XawClientLibs,$(TERMCAPLIB) $(PTYLIB)) @@ -319,4 +329,8 @@ InstallAppDefaultsLong(XTerm-col,XTerm-color) InstallManPage(xterm,$(MANDIR)) InstallManPage(resize,$(MANDIR)) + +cleandir:: + $(RM) *parse.hin + DependTarget() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xterm-326/MANIFEST new/xterm-327/MANIFEST --- old/xterm-326/MANIFEST 2016-07-18 04:21:41.000000000 +0200 +++ new/xterm-327/MANIFEST 2016-10-03 01:18:09.000000000 +0200 @@ -1,4 +1,4 @@ -MANIFEST for xterm-326, version xterm-326 +MANIFEST for xterm-327, version xterm-327 -------------------------------------------------------------------------------- MANIFEST this file 256colres.h resource-definitions for 256-color mode diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xterm-326/Makefile.in new/xterm-327/Makefile.in --- old/xterm-326/Makefile.in 2016-05-15 18:45:53.000000000 +0200 +++ new/xterm-327/Makefile.in 2016-10-06 02:28:15.000000000 +0200 @@ -1,4 +1,4 @@ -## $XTermId: Makefile.in,v 1.235 2016/05/15 16:45:53 tom Exp $ +## $XTermId: Makefile.in,v 1.238 2016/10/06 00:28:15 tom Exp $ # ----------------------------------------------------------------------------- # this file is part of xterm # @@ -125,7 +125,7 @@ all : $(PROGRAMS) ################################################################################ -.SUFFIXES : .i .def .hin .$(manext) .ms .man .txt @MAN2HTML_NOTE@ .html @GROFF_NOTE@ .ps .pdf +.SUFFIXES : .i .def .cin .hin .$(manext) .ms .man .txt @MAN2HTML_NOTE@ .html @GROFF_NOTE@ .ps .pdf .c$o : @RULE_CC@ @@ -135,8 +135,11 @@ @RULE_CC@ @ECHO_CC@$(CPP) -C $(CPPFLAGS) $*.c >$@ +.def.cin : + $(AWK) '/^CASE_/{printf "{ %d, \"%s\" },\n", n++, $$1; }' < $< >$@ + .def.hin : - grep '^CASE_' $< | $(AWK) '{printf "#define %s %d\n", $$1, n++}' >$@ + $(AWK) '/^CASE_/{printf "#define %s %d\n", $$1, n++}' < $< >$@ .man.$(manext) : $(SHELL) ./minstall "$(INSTALL_DATA)" $< $@ $(appsdir) $(CLASS) $* $* $(pixmapdir) @@ -169,6 +172,10 @@ @groff_n...@.ps.pdf : @GROFF_NOTE@ ps2pdf $*.ps ################################################################################ + +VTPARSE_H = VTparse.h VTparse.hin +TEKPARSE_H = Tekparse.h Tekparse.hin + main$o : main.h misc$o : version.h @@ -189,10 +196,19 @@ -$(RM) $@ perl $(srcdir)/88colres.pl > $@ -charproc$o : main.h @CHARPROC_DEPS@ +charproc$o : $(VTPARSE_H) main.h @CHARPROC_DEPS@ +graphics_regis$o : $(VTPARSE_H) +graphics_sixel$o : $(VTPARSE_H) +misc$o : $(VTPARSE_H) +VTPrsTbl$o : $(VTPARSE_H) + +TekPrsTbl$o : $(TEKPARSE_H) +Tekproc$o : $(TEKPARSE_H) misc$o : builtin_icons.h +trace$o : VTparse.cin Tekparse.cin + # do this to quiet gcc -Wcast-qual warnings builtin_icons.h : @echo "#if OPT_BUILTIN_XPMS" >$@ @@ -500,7 +516,7 @@ -$(RM) *$o *.[is] XtermLog.* .pure core *~ *.bak *.BAK *.out *.tmp clean : mostlyclean - -$(RM) $(PROGRAMS) builtin_icons.h + -$(RM) $(PROGRAMS) builtin_icons.h *.cin *parse.hin distclean :: clean -$(RM) Makefile config.status config.cache config.log xtermcfg.h diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xterm-326/NEWS new/xterm-327/NEWS --- old/xterm-326/NEWS 1970-01-01 01:00:00.000000000 +0100 +++ new/xterm-327/NEWS 2016-10-08 02:44:44.000000000 +0200 @@ -0,0 +1,22 @@ +The NEWS file was generated from xterm.log.html, which serves as the changelog +for xterm. +-------------------------------------------------------------------------------- + Patch #327 - 2016/10/07 + + * add a check in the function which handles end-of-line wrapping to + ensure that C1 controls are allocated one column when + allowC1Printable is set (Debian #738794). + * use consistent error-checking after strtol calls, fixes a case + where a query with OSC 6 did not ensure there was a valid color + number (report by Alex Smith). + * add -baudrate option, for testing ncurses. + * always generate the CASE_xxx symbols in VTparse.h and Tekparse.h, + as part of a change to improve debug-logging. This makes the build + always depend upon awk. + * modify allowC1Printable to disallow codes 160-254 as being + equivalent to codes 32-126 when parsing escape sequences (Debian + #839220). + * amend fix from patch #326 for TrueType fonts to exclude the hidden + character used for double-width cells (report by Grady Martin). + * fix a typo in ctlseqs.ms + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xterm-326/Tekparse.h new/xterm-327/Tekparse.h --- old/xterm-326/Tekparse.h 2006-02-13 02:14:57.000000000 +0100 +++ new/xterm-327/Tekparse.h 2016-10-06 02:32:30.000000000 +0200 @@ -1,31 +1,34 @@ -/* $XTermId: Tekparse.h,v 1.7 2006/02/13 01:14:57 tom Exp $ */ +/* $XTermId: Tekparse.h,v 1.8 2016/10/06 00:32:30 tom Exp $ */ /* - * Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts. + * Copyright 1998-2006,2016 by Thomas E. Dickey * * All Rights Reserved * - * Permission to use, copy, modify, and distribute this software and its - * documentation for any purpose and without fee is hereby granted, - * provided that the above copyright notice appear in all copies and that - * both that copyright notice and this permission notice appear in - * supporting documentation, and that the name of Digital Equipment - * Corporation not be used in advertising or publicity pertaining to - * distribution of the software without specific, written prior permission. - * - * - * DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING - * ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL - * DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR - * ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, - * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, - * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS - * SOFTWARE. + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the + * "Software"), to deal in the Software without restriction, including + * without limitation the rights to use, copy, modify, merge, publish, + * distribute, sublicense, and/or sell copies of the Software, and to + * permit persons to whom the Software is furnished to do so, subject to + * the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + * IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY + * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, + * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE + * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * + * Except as contained in this notice, the name(s) of the above copyright + * holders shall not be used in advertising or otherwise to promote the + * sale, use or other dealings in this Software without prior written + * authorization. */ -/* $XFree86: xc/programs/xterm/Tekparse.h,v 1.6 2006/02/13 01:14:57 dickey Exp $ */ - - -/* @(#)Tekparse.h X10/6.6 11/7/86 */ #ifndef included_Tekparse_h #define included_Tekparse_h 1 @@ -47,51 +50,6 @@ extern Const int Tpttable[]; extern Const int Tspttable[]; -/* - * The following list of definitions is generated from Tekparse.def using the - * following command line: - * - * egrep -v '^CASE_' Tekparse.def | \ - * awk 'BEGIN {n = 0;} {printf "#define %s %d\n", $1, n; n++}' - * - * You you need to change something, change Tekparse.def and regenerate the - * definitions. This would have been automatic, but since this doesn't change - * very often, it isn't worth the makefile hassle. - */ - -#define CASE_REPORT 0 -#define CASE_VT_MODE 1 -#define CASE_SPT_STATE 2 -#define CASE_GIN 3 -#define CASE_BEL 4 -#define CASE_BS 5 -#define CASE_PT_STATE 6 -#define CASE_PLT_STATE 7 -#define CASE_TAB 8 -#define CASE_IPL_STATE 9 -#define CASE_ALP_STATE 10 -#define CASE_UP 11 -#define CASE_COPY 12 -#define CASE_PAGE 13 -#define CASE_BES_STATE 14 -#define CASE_BYP_STATE 15 -#define CASE_IGNORE 16 -#define CASE_ASCII 17 -#define CASE_APL 18 -#define CASE_CHAR_SIZE 19 -#define CASE_BEAM_VEC 20 -#define CASE_CURSTATE 21 -#define CASE_PENUP 22 -#define CASE_PENDOWN 23 -#define CASE_IPL_POINT 24 -#define CASE_PLT_VEC 25 -#define CASE_PT_POINT 26 -#define CASE_SPT_POINT 27 -#define CASE_CR 28 -#define CASE_ESC_STATE 29 -#define CASE_LF 30 -#define CASE_SP 31 -#define CASE_PRINT 32 -#define CASE_OSC 33 +#include <Tekparse.hin> #endif /* included_Tekparse_h */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xterm-326/VTparse.h new/xterm-327/VTparse.h --- old/xterm-326/VTparse.h 2015-02-16 01:10:39.000000000 +0100 +++ new/xterm-327/VTparse.h 2016-10-06 02:37:11.000000000 +0200 @@ -1,7 +1,7 @@ -/* $XTermId: VTparse.h,v 1.65 2015/02/16 00:10:39 tom Exp $ */ +/* $XTermId: VTparse.h,v 1.66 2016/10/06 00:37:11 tom Exp $ */ /* - * Copyright 2002-2014,2015 by Thomas E. Dickey + * Copyright 1996-2015,2016 by Thomas E. Dickey * * All Rights Reserved * @@ -28,28 +28,6 @@ * holders shall not be used in advertising or otherwise to promote the * sale, use or other dealings in this Software without prior written * authorization. - * - * - * Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts. - * - * All Rights Reserved - * - * Permission to use, copy, modify, and distribute this software and its - * documentation for any purpose and without fee is hereby granted, - * provided that the above copyright notice appear in all copies and that - * both that copyright notice and this permission notice appear in - * supporting documentation, and that the name of Digital Equipment - * Corporation not be used in advertising or publicity pertaining to - * distribution of the software without specific, written prior permission. - * - * - * DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING - * ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL - * DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR - * ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, - * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, - * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS - * SOFTWARE. */ #ifndef included_VTparse_h @@ -106,178 +84,6 @@ extern Const PARSE_T scs_pct_table[]; #endif -/* - * The following list of definitions is generated from VTparse.def using the - * following command line: - * - * grep '^CASE_' VTparse.def | awk '{printf "#define %s %d\n", $1, n++}' - * - * If you need to change something, change VTparse.def and regenerate the - * definitions. This would have been automatic, but since this doesn't change - * very often, it isn't worth the makefile hassle. - */ - -#define CASE_GROUND_STATE 0 -#define CASE_IGNORE 1 -#define CASE_BELL 2 -#define CASE_BS 3 -#define CASE_CR 4 -#define CASE_ESC 5 -#define CASE_VMOT 6 -#define CASE_TAB 7 -#define CASE_SI 8 -#define CASE_SO 9 -#define CASE_SCR_STATE 10 -#define CASE_SCS0_STATE 11 -#define CASE_SCS1_STATE 12 -#define CASE_SCS2_STATE 13 -#define CASE_SCS3_STATE 14 -#define CASE_ESC_IGNORE 15 -#define CASE_ESC_DIGIT 16 -#define CASE_ESC_SEMI 17 -#define CASE_DEC_STATE 18 -#define CASE_ICH 19 -#define CASE_CUU 20 -#define CASE_CUD 21 -#define CASE_CUF 22 -#define CASE_CUB 23 -#define CASE_CUP 24 -#define CASE_ED 25 -#define CASE_EL 26 -#define CASE_IL 27 -#define CASE_DL 28 -#define CASE_DCH 29 -#define CASE_DA1 30 -#define CASE_TRACK_MOUSE 31 -#define CASE_TBC 32 -#define CASE_SET 33 -#define CASE_RST 34 -#define CASE_SGR 35 -#define CASE_CPR 36 -#define CASE_DECSTBM 37 -#define CASE_DECREQTPARM 38 -#define CASE_DECSET 39 -#define CASE_DECRST 40 -#define CASE_DECALN 41 -#define CASE_GSETS 42 -#define CASE_DECSC 43 -#define CASE_DECRC 44 -#define CASE_DECKPAM 45 -#define CASE_DECKPNM 46 -#define CASE_IND 47 -#define CASE_NEL 48 -#define CASE_HTS 49 -#define CASE_RI 50 -#define CASE_SS2 51 -#define CASE_SS3 52 -#define CASE_CSI_STATE 53 -#define CASE_OSC 54 -#define CASE_RIS 55 -#define CASE_LS2 56 -#define CASE_LS3 57 -#define CASE_LS3R 58 -#define CASE_LS2R 59 -#define CASE_LS1R 60 -#define CASE_PRINT 61 -#define CASE_XTERM_SAVE 62 -#define CASE_XTERM_RESTORE 63 -#define CASE_XTERM_TITLE 64 -#define CASE_DECID 65 -#define CASE_HP_MEM_LOCK 66 -#define CASE_HP_MEM_UNLOCK 67 -#define CASE_HP_BUGGY_LL 68 -#define CASE_HPA 69 -#define CASE_VPA 70 -#define CASE_XTERM_WINOPS 71 -#define CASE_ECH 72 -#define CASE_CHT 73 -#define CASE_CPL 74 -#define CASE_CNL 75 -#define CASE_CBT 76 -#define CASE_SU 77 -#define CASE_SD 78 -#define CASE_S7C1T 79 -#define CASE_S8C1T 80 -#define CASE_ESC_SP_STATE 81 -#define CASE_ENQ 82 -#define CASE_DECSCL 83 -#define CASE_DECSCA 84 -#define CASE_DECSED 85 -#define CASE_DECSEL 86 -#define CASE_DCS 87 -#define CASE_PM 88 -#define CASE_SOS 89 -#define CASE_ST 90 -#define CASE_APC 91 -#define CASE_EPA 92 -#define CASE_SPA 93 -#define CASE_CSI_QUOTE_STATE 94 -#define CASE_DSR 95 -#define CASE_ANSI_LEVEL_1 96 -#define CASE_ANSI_LEVEL_2 97 -#define CASE_ANSI_LEVEL_3 98 -#define CASE_MC 99 -#define CASE_DEC2_STATE 100 -#define CASE_DA2 101 -#define CASE_DEC3_STATE 102 -#define CASE_DECRPTUI 103 -#define CASE_VT52_CUP 104 -#define CASE_REP 105 -#define CASE_CSI_EX_STATE 106 -#define CASE_DECSTR 107 -#define CASE_DECDHL 108 -#define CASE_DECSWL 109 -#define CASE_DECDWL 110 -#define CASE_DEC_MC 111 -#define CASE_ESC_PERCENT 112 -#define CASE_UTF8 113 -#define CASE_CSI_TICK_STATE 114 -#define CASE_DECELR 115 -#define CASE_DECRQLP 116 -#define CASE_DECEFR 117 -#define CASE_DECSLE 118 -#define CASE_CSI_IGNORE 119 -#define CASE_VT52_IGNORE 120 -#define CASE_VT52_FINISH 121 -#define CASE_CSI_DOLLAR_STATE 122 -#define CASE_DECCRA 123 -#define CASE_DECERA 124 -#define CASE_DECFRA 125 -#define CASE_DECSERA 126 -#define CASE_DECSACE 127 -#define CASE_DECCARA 128 -#define CASE_DECRARA 129 -#define CASE_CSI_STAR_STATE 130 -#define CASE_SET_MOD_FKEYS 131 -#define CASE_SET_MOD_FKEYS0 132 -#define CASE_HIDE_POINTER 133 -#define CASE_SCS1A_STATE 134 -#define CASE_SCS2A_STATE 135 -#define CASE_SCS3A_STATE 136 -#define CASE_CSI_SPACE_STATE 137 -#define CASE_DECSCUSR 138 -#define CASE_SM_TITLE 139 -#define CASE_RM_TITLE 140 -#define CASE_DECSMBV 141 -#define CASE_DECSWBV 142 -#define CASE_DECLL 143 -#define CASE_DECRQM 144 -#define CASE_RQM 145 -#define CASE_CSI_DEC_DOLLAR_STATE 146 -#define CASE_SL 147 -#define CASE_SR 148 -#define CASE_DECDC 149 -#define CASE_DECIC 150 -#define CASE_DECBI 151 -#define CASE_DECFI 152 -#define CASE_DECRQCRA 153 -#define CASE_HPR 154 -#define CASE_VPR 155 -#define CASE_ANSI_SC 156 -#define CASE_ANSI_RC 157 -#define CASE_ESC_COLON 158 -#define CASE_SCS_PERCENT 159 -#define CASE_GSETS_PERCENT 160 -#define CASE_GRAPHICS_ATTRIBUTES 161 +#include <VTparse.hin> #endif /* included_VTparse_h */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xterm-326/charproc.c new/xterm-327/charproc.c --- old/xterm-326/charproc.c 2016-09-23 22:13:11.000000000 +0200 +++ new/xterm-327/charproc.c 2016-10-07 23:14:54.000000000 +0200 @@ -1,4 +1,4 @@ -/* $XTermId: charproc.c,v 1.1422 2016/09/23 20:13:11 tom Exp $ */ +/* $XTermId: charproc.c,v 1.1426 2016/10/07 21:14:54 tom Exp $ */ /* * Copyright 1999-2015,2016 by Thomas E. Dickey @@ -2110,10 +2110,13 @@ * provided that they are not intermixed with an escape sequence. */ if (screen->c1_printable - && (c >= 128 && c < 160)) { + && (c >= 128 && c < 256)) { sp->nextstate = (sp->parsestate == esc_table ? CASE_ESC_IGNORE : sp->parsestate[E2A(160)]); + TRACE(("allowC1Printable %04X %s ->%s\n", + c, which_table(sp->parsestate), + visibleVTparse(sp->nextstate))); } #endif @@ -2216,8 +2219,8 @@ } DumpParams(); - TRACE(("parse %04X -> %d %s (used=%lu)\n", - c, sp->nextstate, + TRACE(("parse %04X -> %s %s (used=%lu)\n", + c, visibleVTparse(sp->nextstate), which_table(sp->parsestate), (unsigned long) sp->string_used)); @@ -4992,6 +4995,10 @@ if (!screen->utf8_mode || (screen->vt100_graphics && charset == '0')) { last_chomp = 1; + } else if (screen->c1_printable && + buf[chars_chomped + offset] >= 0x80 && + buf[chars_chomped + offset] <= 0xa0) { + last_chomp = 1; } else { last_chomp = my_wcwidth((wchar_t) buf[chars_chomped + offset]); } @@ -7554,7 +7561,7 @@ char *temp; value = (int) strtol(next, &temp, 0); - if (!IsEmpty(temp)) { + if (!FullS2L(next, temp)) { xtermWarning("Expected a number: %s\n", next); } else { for (n = 0; n < limit; ++n) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xterm-326/ctlseqs.ms new/xterm-327/ctlseqs.ms --- old/xterm-326/ctlseqs.ms 2016-09-08 11:16:28.000000000 +0200 +++ new/xterm-327/ctlseqs.ms 2016-10-03 01:19:00.000000000 +0200 @@ -1,6 +1,6 @@ .\"#! troff -ms $1 -*- Nroff -*- .\" "Xterm Control Sequences" document -.\" $XTermId: ctlseqs.ms,v 1.331 2016/09/08 09:16:28 tom Exp $ +.\" $XTermId: ctlseqs.ms,v 1.333 2016/10/02 23:19:00 tom Exp $ .\" .\" .\" Copyright 1996-2015,2016 by Thomas E. Dickey @@ -70,7 +70,7 @@ .ds XT XTerm .ds xt xterm .ds LF Patch #326 -.ds RF 2016/09/08 +.ds RF 2016/10/02 .\" .if n .pl 9999v \" no page breaks in nroff .ND @@ -679,7 +679,7 @@ .Ed . .St -.Ss Application Program-Control functions +.Ss Application Program-Command functions .IP \\*(AP\\*(Pt\\*s\\*(ST None. \fIxterm\fP implements no \*(AP functions; \*(Pt is ignored. \*(Pt need not be printable characters. @@ -1633,7 +1633,7 @@ .Ed . .St -.Ss Operating System Controls +.Ss Operating System Commands . .IP \\*(Os\\*(Ps\\*s\\*;\\*(Pt\\*s\\*(ST .IP \\*(Os\\*(Ps\\*s\\*;\\*(Pt\\*s\\*(Be diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xterm-326/ctlseqs.txt new/xterm-327/ctlseqs.txt --- old/xterm-326/ctlseqs.txt 2016-09-08 11:16:31.000000000 +0200 +++ new/xterm-327/ctlseqs.txt 2016-10-03 01:19:00.000000000 +0200 @@ -21,7 +21,7 @@ Thomas Dickey XFree86 Project (1996-2006) invisible-island.net (2006-2016) - updated for XTerm Patch #326 (2016/09/08) + updated for XTerm Patch #326 (2016/10/02) @@ -241,7 +241,7 @@ ESC } Invoke the G2 Character Set as GR (LS2R). ESC ~ Invoke the G1 Character Set as GR (LS1R). -Application Program-Control functions +Application Program-Command functions APC Pt ST None. xterm implements no APC functions; Pt is ignored. Pt need not be printable characters. @@ -1037,7 +1037,7 @@ CSI Pm ' ~ Delete Ps Column(s) (default = 1) (DECDC), VT420 and up. -Operating System Controls +Operating System Commands OSC Ps ; Pt ST OSC Ps ; Pt BEL Set Text Parameters. For colors and font, if Pt is a "?", the diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xterm-326/main.c new/xterm-327/main.c --- old/xterm-326/main.c 2016-06-01 11:13:46.000000000 +0200 +++ new/xterm-327/main.c 2016-10-07 02:40:34.000000000 +0200 @@ -1,4 +1,4 @@ -/* $XTermId: main.c,v 1.781 2016/06/01 09:13:46 tom Exp $ */ +/* $XTermId: main.c,v 1.784 2016/10/07 00:40:34 tom Exp $ */ /* * Copyright 2002-2015,2016 by Thomas E. Dickey @@ -445,7 +445,8 @@ #ifndef VMS static void reapchild(int /* n */ ); -static int spawnXTerm(XtermWidget /* xw */ ); +static int spawnXTerm(XtermWidget /* xw */ + ,unsigned /* line_speed */ ); static void remove_termcap_entry(char *, const char *); #ifdef USE_PTY_SEARCH static int pty_search(int * /* pty */ ); @@ -1115,6 +1116,7 @@ /* options that we process ourselves */ {"-help", NULL, XrmoptionSkipNArgs, (XPointer) NULL}, {"-version", NULL, XrmoptionSkipNArgs, (XPointer) NULL}, +{"-baudrate", NULL, XrmoptionSkipArg, (XPointer) NULL}, {"-class", NULL, XrmoptionSkipArg, (XPointer) NULL}, {"-e", NULL, XrmoptionSkipLine, (XPointer) NULL}, {"-into", NULL, XrmoptionSkipArg, (XPointer) NULL}, @@ -1159,6 +1161,7 @@ #endif { "-iconic", "start iconic" }, { "-name string", "client instance, icon, and title strings" }, +{ "-baudrate rate", "set line-speed (default 38400)" }, { "-class string", "class string (XTerm)" }, { "-title string", "title string" }, { "-xrm resourcestring", "additional resource specifications" }, @@ -1357,9 +1360,10 @@ } ++string; } else if (termcap && (*string == '\\')) { + char *s = (string + 1); char *d; - int temp = (int) strtol(string + 1, &d, 8); - if (temp > 0 && d != string) { + int temp = (int) strtol(s, &d, 8); + if (PartS2L(s, d) && temp > 0) { value = temp; string = d; } @@ -1971,6 +1975,124 @@ } #endif +static unsigned +lookup_baudrate(const char *value) +{ + struct speed { + unsigned given_speed; /* values for 'ospeed' */ + unsigned actual_speed; /* the actual speed */ + }; + +#define DATA(number) { B##number, number } + + static struct speed const speeds[] = + { + DATA(0), + DATA(50), + DATA(75), + DATA(110), + DATA(134), + DATA(150), + DATA(200), + DATA(300), + DATA(600), + DATA(1200), + DATA(1800), + DATA(2400), + DATA(4800), + DATA(9600), +#ifdef B19200 + DATA(19200), +#elif defined(EXTA) + {EXTA, 19200}, +#endif +#ifdef B28800 + DATA(28800), +#endif +#ifdef B38400 + DATA(38400), +#elif defined(EXTB) + {EXTB, 38400}, +#endif +#ifdef B57600 + DATA(57600), +#endif +#ifdef B76800 + DATA(76800), +#endif +#ifdef B115200 + DATA(115200), +#endif +#ifdef B153600 + DATA(153600), +#endif +#ifdef B230400 + DATA(230400), +#endif +#ifdef B307200 + DATA(307200), +#endif +#ifdef B460800 + DATA(460800), +#endif +#ifdef B500000 + DATA(500000), +#endif +#ifdef B576000 + DATA(576000), +#endif +#ifdef B921600 + DATA(921600), +#endif +#ifdef B1000000 + DATA(1000000), +#endif +#ifdef B1152000 + DATA(1152000), +#endif +#ifdef B1500000 + DATA(1500000), +#endif +#ifdef B2000000 + DATA(2000000), +#endif +#ifdef B2500000 + DATA(2500000), +#endif +#ifdef B3000000 + DATA(3000000), +#endif +#ifdef B3500000 + DATA(3500000), +#endif +#ifdef B4000000 + DATA(4000000), +#endif + }; +#undef DATA + unsigned result = 0; + long check; + char *next; + if (x_toupper(*value) == 'B') + value++; + if (isdigit(CharOf(*value))) { + check = strtol(value, &next, 10); + if (FullS2L(value, next) && (check > 0)) { + Cardinal n; + for (n = 0; n < XtNumber(speeds); ++n) { + if (speeds[n].actual_speed == (unsigned) check) { + result = speeds[n].given_speed; + break; + } + } + } + } + if (result == 0) { + fprintf(stderr, "unsupported value for baudrate: %s\n", value); + } + return result; +} + int main(int argc, char *argv[]ENVP_ARG) { @@ -1989,6 +2111,7 @@ TScreen *screen; int mode; char *my_class = x_strdup(DEFCLASS); + unsigned line_speed = VAL_LINE_SPEED; Window winToEmbedInto = None; ProgramName = argv[0]; @@ -2070,6 +2193,11 @@ } else if (!strcmp(option_ptr->option, "-help")) { Help(); quit = True; + } else if (!strcmp(option_ptr->option, "-baudrate")) { + if ((line_speed = lookup_baudrate(option_value)) == 0) { + Help(); + quit = True; + } } else if (!strcmp(option_ptr->option, "-class")) { free(my_class); if ((my_class = x_strdup(option_value)) == 0) { @@ -2079,6 +2207,10 @@ } else if (!strcmp(option_ptr->option, "-into")) { char *endPtr; winToEmbedInto = (Window) strtol(option_value, &endPtr, 0); + if (!FullS2L(option_value, endPtr)) { + Help(); + quit = True; + } } } if (quit) @@ -2126,7 +2258,7 @@ } } #if defined(macII) || defined(ATT) || defined(CRAY) /* { */ - d_tio.c_cflag = VAL_LINE_SPEED | CS8 | CREAD | PARENB | HUPCL; + d_tio.c_cflag = line_speed | CS8 | CREAD | PARENB | HUPCL; d_tio.c_lflag = ISIG | ICANON | ECHO | ECHOE | ECHOK; #ifdef ECHOKE d_tio.c_lflag |= ECHOKE | IEXTEN; @@ -2153,12 +2285,12 @@ #ifdef BAUD_0 /* { */ d_tio.c_cflag = CS8 | CREAD | PARENB | HUPCL; #else /* }{ !BAUD_0 */ - d_tio.c_cflag = VAL_LINE_SPEED | CS8 | CREAD | PARENB | HUPCL; + d_tio.c_cflag = line_speed | CS8 | CREAD | PARENB | HUPCL; #endif /* } !BAUD_0 */ #else /* USE_POSIX_TERMIOS */ d_tio.c_cflag = CS8 | CREAD | PARENB | HUPCL; - cfsetispeed(&d_tio, VAL_LINE_SPEED); - cfsetospeed(&d_tio, VAL_LINE_SPEED); + cfsetispeed(&d_tio, line_speed); + cfsetospeed(&d_tio, line_speed); #endif d_tio.c_lflag = ISIG | ICANON | ECHO | ECHOE | ECHOK; #ifdef ECHOKE @@ -2349,6 +2481,11 @@ debug = True; continue; #endif /* DEBUG */ + case 'b': + if (strcmp(argv[0], "-baudrate")) + Syntax(*argv); + argc--, argv++; + continue; case 'c': if (strcmp(argv[0], "-class")) Syntax(*argv); @@ -2506,7 +2643,7 @@ } }); - spawnXTerm(term); + spawnXTerm(term, line_speed); #ifndef VMS /* Child process is out there, let's catch its termination */ @@ -3304,7 +3441,7 @@ * If slave, the pty named in passedPty is already open for use */ static int -spawnXTerm(XtermWidget xw) +spawnXTerm(XtermWidget xw, unsigned line_speed) { TScreen *screen = TScreenOf(xw); Cardinal nn; @@ -4009,13 +4146,13 @@ #ifdef BAUD_0 /* baud rate is 0 (don't care) */ #elif defined(HAVE_TERMIO_C_ISPEED) - tio.c_ispeed = tio.c_ospeed = VAL_LINE_SPEED; + tio.c_ispeed = tio.c_ospeed = line_speed; #else /* !BAUD_0 */ - tio.c_cflag |= VAL_LINE_SPEED; + tio.c_cflag |= line_speed; #endif /* !BAUD_0 */ #else /* USE_POSIX_TERMIOS */ - cfsetispeed(&tio, VAL_LINE_SPEED); - cfsetospeed(&tio, VAL_LINE_SPEED); + cfsetispeed(&tio, line_speed); + cfsetospeed(&tio, line_speed); #ifdef __MVS__ /* turn off bits that can't be set from the slave side */ tio.c_cflag &= ~(PACKET | PKT3270 | PTU3270 | PKTXTND); @@ -4096,8 +4233,8 @@ sg.sg_flags &= ~(ALLDELAY | XTABS | CBREAK | RAW); sg.sg_flags |= ECHO | CRMOD; /* make sure speed is set on pty so that editors work right */ - sg.sg_ispeed = VAL_LINE_SPEED; - sg.sg_ospeed = VAL_LINE_SPEED; + sg.sg_ispeed = line_speed; + sg.sg_ospeed = line_speed; /* reset t_brkc to default value */ tc.t_brkc = -1; #ifdef LPASS8 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xterm-326/misc.c new/xterm-327/misc.c --- old/xterm-326/misc.c 2016-09-09 01:39:58.000000000 +0200 +++ new/xterm-327/misc.c 2016-10-07 02:41:14.000000000 +0200 @@ -1,4 +1,4 @@ -/* $XTermId: misc.c,v 1.742 2016/09/08 23:39:58 Joe.Peterson Exp $ */ +/* $XTermId: misc.c,v 1.743 2016/10/07 00:41:14 tom Exp $ */ /* * Copyright 1999-2015,2016 by Thomas E. Dickey @@ -2766,7 +2766,7 @@ char *next; color = (int) (strtol) (buf, &next, 10); - if ((next == buf) || (color < 0)) + if (!PartS2L(buf, next) || (color < 0)) break; /* no number at all */ if (next != 0) { if (strchr(";", *next) == 0) @@ -3666,7 +3666,7 @@ ++buf; } else { which = strtol(buf, &next, 10); - if (next == 0) + if (!PartS2L(buf, next) || (which < 0)) break; buf = next; if (*buf == ';') @@ -3676,7 +3676,7 @@ ++buf; } else { value = strtol(buf, &next, 10); - if (next == 0) + if (!PartS2L(buf, next) || (which < 0)) break; buf = next; if (*buf == ';') diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xterm-326/package/debian/changelog new/xterm-327/package/debian/changelog --- old/xterm-326/package/debian/changelog 2016-07-18 04:21:41.000000000 +0200 +++ new/xterm-327/package/debian/changelog 2016-10-03 01:18:09.000000000 +0200 @@ -1,3 +1,9 @@ +xterm-dev (327) unstable; urgency=low + + * maintenance updates + + -- Thomas E. Dickey <dic...@invisible-island.net> Sun, 02 Oct 2016 19:18:09 -0400 + xterm-dev (326) unstable; urgency=low * maintenance updates diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xterm-326/package/freebsd/Makefile new/xterm-327/package/freebsd/Makefile --- old/xterm-326/package/freebsd/Makefile 2016-07-18 04:21:41.000000000 +0200 +++ new/xterm-327/package/freebsd/Makefile 2016-10-03 01:18:09.000000000 +0200 @@ -5,7 +5,7 @@ # and "make makesum". PORTNAME= xterm -PORTVERSION= 326 +PORTVERSION= 327 CATEGORIES= x11 MASTER_SITES= ftp://invisible-island.net/xterm/ \ CRITICAL diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xterm-326/package/xterm.spec new/xterm-327/package/xterm.spec --- old/xterm-326/package/xterm.spec 2016-07-18 04:21:41.000000000 +0200 +++ new/xterm-327/package/xterm.spec 2016-10-03 01:18:09.000000000 +0200 @@ -1,11 +1,11 @@ -# $XTermId: xterm.spec,v 1.92 2016/07/18 02:21:41 tom Exp $ +# $XTermId: xterm.spec,v 1.93 2016/10/02 23:18:09 tom Exp $ Summary: X terminal emulator (development version) %global my_middle xterm %global my_suffix -dev %global fullname %{my_middle}%{my_suffix} %global my_class XTermDev Name: %{fullname} -Version: 326 +Version: 327 Release: 1 License: X11 Group: User Interface/X diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xterm-326/ptyx.h new/xterm-327/ptyx.h --- old/xterm-326/ptyx.h 2016-05-29 22:32:48.000000000 +0200 +++ new/xterm-327/ptyx.h 2016-10-07 02:38:57.000000000 +0200 @@ -1,4 +1,4 @@ -/* $XTermId: ptyx.h,v 1.829 2016/05/29 20:32:48 tom Exp $ */ +/* $XTermId: ptyx.h,v 1.830 2016/10/07 00:38:57 tom Exp $ */ /* * Copyright 1999-2015,2016 by Thomas E. Dickey @@ -324,6 +324,13 @@ #define IsEmpty(s) ((s) == 0 || *(s) == '\0') #define IsSpace(c) ((c) == ' ' || (c) == '\t' || (c) == '\r' || (c) == '\n') +/* + * Check strtol result, using "FullS2L" when no more data is expected, and + * "PartS2L" when more data may follow in the string. + */ +#define FullS2L(s,d) (PartS2L(s,d) && (*(d) == '\0')) +#define PartS2L(s,d) (isdigit(CharOf(*(s))) && (d) != (s) && (d) != 0) + #define CASETYPE(name) case name: result = #name; break #define CharOf(n) ((Char)(n)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xterm-326/trace.c new/xterm-327/trace.c --- old/xterm-326/trace.c 2016-05-31 02:48:42.000000000 +0200 +++ new/xterm-327/trace.c 2016-10-05 11:16:01.000000000 +0200 @@ -1,4 +1,4 @@ -/* $XTermId: trace.c,v 1.165 2016/05/31 00:48:42 tom Exp $ */ +/* $XTermId: trace.c,v 1.166 2016/10/05 09:16:01 tom Exp $ */ /* * Copyright 1997-2015,2016 by Thomas E. Dickey @@ -444,6 +444,46 @@ return result; } +const char * +visibleTekparse(int code) +{ + static const struct { + int code; + const char *name; + } table[] = { +#include "Tekparse.cin" + }; + const char *result = "?"; + Cardinal n; + for (n = 0; n < XtNumber(table); ++n) { + if (table[n].code == code) { + result = table[n].name; + break; + } + } + return result; +} + +const char * +visibleVTparse(int code) +{ + static const struct { + int code; + const char *name; + } table[] = { +#include "VTparse.cin" + }; + const char *result = "?"; + Cardinal n; + for (n = 0; n < XtNumber(table); ++n) { + if (table[n].code == code) { + result = table[n].name; + break; + } + } + return result; +} + const char * visibleXError(int code) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xterm-326/trace.h new/xterm-327/trace.h --- old/xterm-326/trace.h 2016-05-13 22:46:40.000000000 +0200 +++ new/xterm-327/trace.h 2016-10-05 10:56:36.000000000 +0200 @@ -1,4 +1,4 @@ -/* $XTermId: trace.h,v 1.77 2016/05/13 20:46:40 tom Exp $ */ +/* $XTermId: trace.h,v 1.78 2016/10/05 08:56:36 tom Exp $ */ /* * Copyright 1997-2015,2016 by Thomas E. Dickey @@ -64,6 +64,8 @@ extern const char * visibleNotifyMode (int /* code */); extern const char * visibleScsCode(int /* chrset */); extern const char * visibleSelectionTarget(Display * /* d */, Atom /* a */); +extern const char * visibleTekparse (int); +extern const char * visibleVTparse (int); extern const char * visibleXError (int /* code */); extern void TraceArgv(const char * /* tag */, char ** /* argv */); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xterm-326/util.c new/xterm-327/util.c --- old/xterm-326/util.c 2016-09-24 15:39:04.000000000 +0200 +++ new/xterm-327/util.c 2016-10-07 02:41:38.000000000 +0200 @@ -1,4 +1,4 @@ -/* $XTermId: util.c,v 1.691 2016/09/24 13:39:04 tom Exp $ */ +/* $XTermId: util.c,v 1.693 2016/10/07 00:41:38 tom Exp $ */ /* * Copyright 1999-2015,2016 by Thomas E. Dickey @@ -3571,7 +3571,7 @@ filler = needed - 1; ch = part; replace = True; - } else { + } else if (ch != HIDDEN_CHAR) { SetMissing(); } } @@ -4847,7 +4847,7 @@ || (x_strcasecmp(value, "no") == 0) || (x_strcasecmp(value, "off") == 0)) { result = False; - } else if ((check = strtol(value, &next, 0)) >= 0 && *next == '\0') { + } else if ((check = strtol(value, &next, 0)) >= 0 && FullS2L(value, next)) { if (check >= (long) (limit + 2)) /* 2 is past False=0, True=1 */ check = True; result = (int) check; @@ -4951,7 +4951,7 @@ str++; } else { long s = strtol(str, &end, 0); - if (end > str && (int) s >= 0) { + if (FullS2L(str, end) && ((int) s >= 0)) { screen = (int) s; str = end; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xterm-326/version.h new/xterm-327/version.h --- old/xterm-326/version.h 2016-09-25 23:28:55.000000000 +0200 +++ new/xterm-327/version.h 2016-10-08 02:45:01.000000000 +0200 @@ -1,4 +1,4 @@ -/* $XTermId: version.h,v 1.429 2016/09/25 21:28:55 tom Exp $ */ +/* $XTermId: version.h,v 1.431 2016/10/08 00:45:01 tom Exp $ */ /* * Copyright 1998-2015,2016 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 326 -#define XTERM_DATE 2016-09-25 +#define XTERM_PATCH 327 +#define XTERM_DATE 2016-10-07 #ifndef __vendorversion__ #define __vendorversion__ "XTerm" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xterm-326/xterm.log.html new/xterm-327/xterm.log.html --- old/xterm-326/xterm.log.html 2016-09-25 23:31:02.000000000 +0200 +++ new/xterm-327/xterm.log.html 2016-10-08 02:44:44.000000000 +0200 @@ -30,7 +30,7 @@ * sale, use or other dealings in this Software without prior written * * authorization. * ***************************************************************************** - $XTermId: xterm.log.html,v 1.1684 2016/09/25 21:31:02 tom Exp $ + $XTermId: xterm.log.html,v 1.1693 2016/10/08 00:44:44 tom Exp $ --> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> @@ -72,6 +72,8 @@ CHANGELOG</a>).</p> <ul> + <li><a href="#xterm_327">Patch #327 - 2016/10/07</a></li> + <li><a href="#xterm_326">Patch #326 - 2016/09/25</a></li> <li><a href="#xterm_325">Patch #325 - 2016/06/05</a></li> @@ -937,6 +939,38 @@ <li><a href="#xterm_01">Patch #1 - 1996/1/6</a></li> </ul> + <h1><a name="xterm_327" id="xterm_327">Patch #327 - + 2016/10/07</a></h1> + + <ul> + <li>add a check in the function which handles end-of-line + wrapping to ensure that C1 controls are allocated one column + when <code>allowC1Printable</code> is set (Debian + #738794).</li> + + <li>use consistent error-checking after <code>strtol</code> + calls, fixes a case where a query with OSC 6 did not ensure + there was a valid color number (report by Alex Smith).</li> + + <li>add <code>-baudrate</code> option, for testing + ncurses.</li> + + <li>always generate the <code>CASE_<em>xxx</em></code> symbols + in <code>VTparse.h</code> and <code>Tekparse.h</code>, as part + of a change to improve debug-logging. This makes the build + always depend upon <code>awk</code>.</li> + + <li>modify <code>allowC1Printable</code> to disallow codes + 160-254 as being equivalent to codes 32-126 when parsing escape + sequences (Debian #839220).</li> + + <li>amend fix from <a href="#xterm_326">patch #326</a> for + TrueType fonts to exclude the hidden character used for + double-width cells (report by Grady Martin).</li> + + <li>fix a typo in <code>ctlseqs.ms</code></li> + </ul> + <h1><a name="xterm_326" id="xterm_326">Patch #326 - 2016/09/25</a></h1> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xterm-326/xterm.man new/xterm-327/xterm.man --- old/xterm-326/xterm.man 2016-09-25 19:25:26.000000000 +0200 +++ new/xterm-327/xterm.man 2016-10-07 00:57:58.000000000 +0200 @@ -1,5 +1,5 @@ '\" t -.\" $XTermId: xterm.man,v 1.689 2016/09/25 17:25:26 tom Exp $ +.\" $XTermId: xterm.man,v 1.690 2016/10/06 22:57:58 tom Exp $ .\" .\" Copyright 1996-2015,2016 by Thomas E. Dickey .\" @@ -459,6 +459,12 @@ The default is \*(``2\*(''. .TP 8 +.BI \-baudrate " number" +Set the line-speed, used to test the behavior of applications that +use the line-speed when optimizing their output to the screen. +The +default is \*(``38400\*(''. +.TP 8 .B +bc turn off text cursor blinking. This overrides the \fBcursorBlink\fR resource.