ncurses 5.9 - patch 20140329
authorThomas E. Dickey <dickey@invisible-island.net>
Sun, 30 Mar 2014 00:23:11 +0000 (00:23 +0000)
committerThomas E. Dickey <dickey@invisible-island.net>
Sun, 30 Mar 2014 00:23:11 +0000 (00:23 +0000)
+ add check in tic for mismatch between ccc and initp/initc
+ cancel ccc in putty-256color and konsole-256color for consistency
  with the cancelled initc capability (patch by Sven Zuhlsdorf).
+ add xterm+256setaf building block for various terminals which only
  get the 256-color feature half-implemented -TD
+ updated "st" entry (leaving the 0.1.1 version as "simpleterm") to
  0.4.1 -TD

NEWS
dist.mk
man/infocmp.1m
misc/terminfo.src
package/debian-mingw/changelog
package/debian-mingw64/changelog
package/debian/changelog
package/mingw-ncurses.nsi
package/mingw-ncurses.spec
package/ncurses.spec
progs/tic.c

diff --git a/NEWS b/NEWS
index 89fda20d2c789193c3c0c78dfc6931854fdd3975..68175781ff945996c63281649b3004710639ba1d 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -25,7 +25,7 @@
 -- sale, use or other dealings in this Software without prior written        --
 -- authorization.                                                            --
 -------------------------------------------------------------------------------
--- $Id: NEWS,v 1.2185 2014/03/23 21:01:15 tom Exp $
+-- $Id: NEWS,v 1.2187 2014/03/29 23:49:01 tom Exp $
 -------------------------------------------------------------------------------
 
 This is a log of changes that ncurses has gone through since Zeyd started
@@ -45,6 +45,15 @@ See the AUTHORS file for the corresponding full names.
 Changes through 1.9.9e did not credit all contributions;
 it is not possible to add this information.
 
+20140329
+       + add check in tic for mismatch between ccc and initp/initc
+       + cancel ccc in putty-256color and konsole-256color for consistency
+         with the cancelled initc capability (patch by Sven Zuhlsdorf).
+       + add xterm+256setaf building block for various terminals which only
+         get the 256-color feature half-implemented -TD
+       + updated "st" entry (leaving the 0.1.1 version as "simpleterm") to
+         0.4.1 -TD
+
 20140323
        + fix typo in "mlterm" entry (report by Gabriele Balducci) -TD
 
diff --git a/dist.mk b/dist.mk
index e628a21dd303423c0bef4dffd91525afd92401c3..cd1856d43294f8d70058233b54c6c01ddd406bde 100644 (file)
--- a/dist.mk
+++ b/dist.mk
@@ -25,7 +25,7 @@
 # use or other dealings in this Software without prior written               #
 # authorization.                                                             #
 ##############################################################################
-# $Id: dist.mk,v 1.978 2014/03/23 20:59:54 tom Exp $
+# $Id: dist.mk,v 1.979 2014/03/26 19:51:51 tom Exp $
 # Makefile for creating ncurses distributions.
 #
 # This only needs to be used directly as a makefile by developers, but
@@ -37,7 +37,7 @@ SHELL = /bin/sh
 # These define the major/minor/patch versions of ncurses.
 NCURSES_MAJOR = 5
 NCURSES_MINOR = 9
-NCURSES_PATCH = 20140323
+NCURSES_PATCH = 20140329
 
 # We don't append the patch to the version, since this only applies to releases
 VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
index 294abe3eb6936faa8bf88fe5c55f6252428ae072..26d5961b0cd171334147bc22b73846ff418bcdca 100644 (file)
@@ -1,6 +1,6 @@
 '\" t
 .\"***************************************************************************
-.\" Copyright (c) 1998-2012,2013 Free Software Foundation, Inc.              *
+.\" Copyright (c) 1998-2013,2014 Free Software Foundation, Inc.              *
 .\"                                                                          *
 .\" Permission is hereby granted, free of charge, to any person obtaining a  *
 .\" copy of this software and associated documentation files (the            *
@@ -27,7 +27,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: infocmp.1m,v 1.53 2013/02/02 22:07:35 tom Exp $
+.\" $Id: infocmp.1m,v 1.54 2014/03/29 23:18:29 tom Exp $
 .TH @INFOCMP@ 1M ""
 .ds n 5
 .de bP
@@ -377,7 +377,7 @@ It also recognizes a SGR action corresponding to ANSI/ISO 6429/ECMA Set
 Graphics Rendition, with the values NORMAL, BOLD, UNDERLINE, BLINK, and
 REVERSE.
 All but NORMAL may be prefixed with `+' (turn on) or `\-' (turn off).
-.PP
+.IP
 An SGR0 designates an empty highlight sequence (equivalent to {SGR:NORMAL}).
 .TP 5
 \fB\-l\fR
index aca3b9486bf866214e505d722803334365bf4e70..34f508044713909dfc2ec2873750321c3ff491eb 100644 (file)
@@ -6,8 +6,8 @@
 # Report bugs and new terminal descriptions to
 #      bug-ncurses@gnu.org
 #
-#      $Revision: 1.487 $
-#      $Date: 2014/03/23 20:45:15 $
+#      $Revision: 1.491 $
+#      $Date: 2014/03/29 23:45:51 $
 #
 # The original header is preserved below for reference.  It is noted that there
 # is a "newer" version which differs in some cosmetic details (but actually
@@ -1231,8 +1231,7 @@ nsterm-bce|AppKit Terminal.app v71+/v100.1.8+ with Mac OS X version 10.3/10.4 (b
 # Earlier reports state that these differences also apply to OS X 10.7 (Lion),
 #      TERM_PROGRAM_VERSION=303
 nsterm-256color|Terminal.app in OS X 10.8,
-       ccc@,
-       initc@, use=xterm+256color, use=nsterm-bce,
+       use=xterm+256setaf, use=nsterm-bce,
 
 # This is an alias which should always point to the "current" version
 nsterm|Apple_Terminal|AppKit Terminal.app,
@@ -1248,8 +1247,8 @@ nsterm|Apple_Terminal|AppKit Terminal.app,
 # NOTE: When tack tests (csr) + (nel) iTerm.app crashes, so (csr) is
 # disabled.
 iTerm.app|iTerm.app terminal emulator for Mac OS X,
-       bce, bw@, ccc@,
-       csr@, initc@, kend=\EOF, khome=\EOH, use=xterm+256color,
+       bce, bw@,
+       csr@, kend=\EOF, khome=\EOH, use=xterm+256setaf,
        use=nsterm-16color,
 
 # xnuppc - Darwin PowerPC Console (a.k.a. "darwin")
@@ -3525,7 +3524,7 @@ vt100-putty|Reset PuTTY to pure vt100,
        use=vt100,
 # palette is hardcoded...
 putty-256color|PuTTY 0.58 with xterm 256-colors,
-       initc@, use=xterm+256color, use=putty,
+       use=xterm+256setaf, use=putty,
 
 # One of the keyboard selections is "VT100+".
 # pterm (the X11 port) uses shifted F1-F10 as F11-F20
@@ -4119,6 +4118,14 @@ xterm+256color|xterm 256-color feature,
        setaf=\E[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m,
        setb@, setf@,
 
+xterm+256setaf|xterm 256-color (set-only),
+       ccc@,
+       colors#256, pairs#32767,
+       initc@,
+       setab=\E[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m,
+       setaf=\E[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m,
+       setb@, setf@,
+
 # 88-colors is a compile-time feature of XFree86 xterm beginning with
 # patch #115 (1999/9/18) -TD
 #
@@ -4749,7 +4756,7 @@ konsole|KDE console window,
 
 # palette is hardcoded...
 konsole-256color|KDE console window with xterm 256-colors,
-       initc@, use=xterm+256color, use=konsole,
+       use=xterm+256setaf, use=konsole,
 
 #### MLTERM
 # http://mlterm.sourceforge.net/
@@ -5336,6 +5343,75 @@ mgr-linux|Mgr window with Linux keyboard,
 
 #### SIMPLETERM
 # st.suckless.org
+# st-0.4.1
+#
+# This version uses a table which supports a single modifier (a subset of
+# xterm's keys, using the same scheme).  Because it supports only a single
+# modifier in this table, function keys f36-f48 are normally unavailable
+# because they are assigned to modifier-4.
+#
+# The program assigns TERM to match the program name (the upstream source says
+# "st", but Debian renames it to "stterm").
+#
+# The source includes two entries which are not useful here:
+#      st-meta| simpleterm with meta key,
+#      st-meta-256color| simpleterm with meta key and 256 colors,
+# because st's notion of "meta" does not correspond to the terminfo definition.
+# Rather, it acts like xterm - when the meta feature is disabled.
+#
+# Removed invis -TD
+st|stterm| simpleterm 0.4.1,
+       am, bce, hs, mir, msgr, ul, xenl,
+       colors#8, cols#80, it#8, lines#24, ncv#3, pairs#64,
+       acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
+       bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
+       clear=\E[H\E[2J, cnorm=\E[?12l\E[?25h, cr=^M,
+       csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
+       cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
+       cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
+       cvvis=\E[?25h, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM,
+       dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K,
+       enacs=\E)0, flash=\E[?5h\E[?5l, fsl=^G, home=\E[H,
+       hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@,
+       il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dS,
+       is2=\E[4l\E>\E[?1034l, kDC=\E[3;2~, kEND=\E[1;2F,
+       kHOM=\E[1;2H, kIC=\E[2;2~, kLFT=\E[1;2D, kNXT=\E[6;2~,
+       kPRV=\E[5;2~, kRIT=\E[1;2C, ka1=\E[1~, ka3=\E[5~, kb2=\EOu,
+       kbs=\177, kc1=\E[4~, kc3=\E[6~, kcbt=\E[Z, kclr=\E[3;5~,
+       kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
+       kdch1=\E[3~, kdl1=\E[3;2~, ked=\E[1;5F, kel=\E[1;2F,
+       kend=\E[4~, kent=\EOM, kf1=\EOP, kf10=\E[21~, kf11=\E[23~,
+       kf12=\E[24~, kf13=\E[1;2P, kf14=\E[1;2Q, kf15=\E[1;2R,
+       kf16=\E[1;2S, kf17=\E[15;2~, kf18=\E[17;2~,
+       kf19=\E[18;2~, kf2=\EOQ, kf20=\E[19;2~, kf21=\E[20;2~,
+       kf22=\E[21;2~, kf23=\E[23;2~, kf24=\E[24;2~,
+       kf25=\E[1;5P, kf26=\E[1;5Q, kf27=\E[1;5R, kf28=\E[1;5S,
+       kf29=\E[15;5~, kf3=\EOR, kf30=\E[17;5~, kf31=\E[18;5~,
+       kf32=\E[19;5~, kf33=\E[20;5~, kf34=\E[21;5~,
+       kf35=\E[23;5~, kf36=\E[24;5~, kf37=\E[1;6P, kf38=\E[1;6Q,
+       kf39=\E[1;6R, kf4=\EOS, kf40=\E[1;6S, kf41=\E[15;6~,
+       kf42=\E[17;6~, kf43=\E[18;6~, kf44=\E[19;6~,
+       kf45=\E[20;6~, kf46=\E[21;6~, kf47=\E[23;6~,
+       kf48=\E[24;6~, kf49=\E[1;3P, kf5=\E[15~, kf50=\E[1;3Q,
+       kf51=\E[1;3R, kf52=\E[1;3S, kf53=\E[15;3~, kf54=\E[17;3~,
+       kf55=\E[18;3~, kf56=\E[19;3~, kf57=\E[20;3~,
+       kf58=\E[21;3~, kf59=\E[23;3~, kf6=\E[17~, kf60=\E[24;3~,
+       kf61=\E[1;4P, kf62=\E[1;4Q, kf63=\E[1;4R, kf7=\E[18~,
+       kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kich1=\E[2~,
+       kil1=\E[2;5~, kind=\E[1;2B, kmous=\E[M, knp=\E[6~,
+       kpp=\E[5~, kri=\E[1;2A, krmir=\E[2;2~, op=\E[39;49m,
+       rc=\E8, rev=\E[7m, ri=\EM, ritm=\E[23m, rmacs=\E(B,
+       rmcup=\E[?1049l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m,
+       rmul=\E[m, rs1=\Ec, rs2=\E[4l\E>\E[?1034l, sc=\E7,
+       setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
+       setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,
+       setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,
+       sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%;m,
+       sgr0=\E[0m, sitm=\E[3m, smacs=\E(0, smcup=\E[?1049h,
+       smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m,
+       tbc=\E[3g, tsl=\E]0;, u6=\E[%i%d;%dR, u7=\E[6n,
+       u8=\E[?1;2c, u9=\E[c, vpa=\E[%i%p1%dd,
+#
 # st-0.1.1
 #
 # Note:  the original terminfo description uses leading blank to persuade
@@ -5354,7 +5430,7 @@ mgr-linux|Mgr window with Linux keyboard,
 # - shifted cursor-keys send sequences like rxvt
 # - sgr referred to unimplemented "invis" mode.
 # Fixes: add eo and xenl per tack, remove nonworking cbt, hts and tbc, invis
-simpleterm|st| simpleterm,
+simpleterm|old-st| simpleterm 0.1.1,
        am, eo, mir, msgr, ul, xenl,
        colors#8, cols#80, it#8, lines#24, ncv#3, pairs#64,
        acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
@@ -5374,13 +5450,15 @@ simpleterm|st| simpleterm,
        setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
        sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m,
        sgr0=\E[0m, smacs=\E(0, smso=\E[7m, smul=\E[4m,
-st-16color|simpleterm with 16-colors,
-       use=ibm+16color, use=simpleterm,
+st-16color|stterm-16color|simpleterm with 16-colors,
+       use=ibm+16color, use=st,
 # 256 colors "works", but when running xterm's test-scripts, some garbage is
 # shown in the titlebar.
-st-256color|simpleterm with 256 colors,
-       ccc@,
-       initc@, use=xterm+256color, use=simpleterm,
+#
+# terminal wants to use TERM=stterm-256color, but that is longer than 14
+# characters, making the choice nonportable.
+st-256color|stterm-256color|simpleterm with 256 colors,
+       use=xterm+256color, use=st,
 
 #### TERMINATOR
 # http://software.jessies.org/terminator/
@@ -5495,8 +5573,8 @@ terminator|Terminator no line wrap,
 #      Any-event mouse works
 #      Mouse button-event works
 terminology|EFL-based terminal emulator,
-       ccc@, mc5i@, xon@,
-       blink@, ed@, el@, el1@, initc@, invis=\E[8m, kLFT=\E[1;2D,
+       mc5i@, xon@,
+       blink@, ed@, el@, el1@, invis=\E[8m, kLFT=\E[1;2D,
        kRIT=\E[1;2C, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~,
        kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
        kind=\E[1;2B, kri=\E[1;2A,
@@ -5509,7 +5587,7 @@ terminology|EFL-based terminal emulator,
        kLFT6=\E[1;6D, kLFT7=\E[1;7D, kRIT3=\E[1;3C,
        kRIT4=\E[1;4C, kRIT5=\E[1;5C, kRIT6=\E[1;6C,
        kRIT7=\E[1;7C, kUP=\E[1;2A, use=vt100,
-       use=xterm+256color,
+       use=xterm+256setaf,
 
 ######## UNIX VIRTUAL TERMINALS, VIRTUAL CONSOLES, AND TELNET CLIENTS
 #
@@ -5645,20 +5723,16 @@ screen-16color-bce-s|GNU Screen with 16 colors, BCE, and status line,
 # Entries for GNU Screen 4.02 with --enable-colors256.
 
 screen-256color|GNU Screen with 256 colors,
-       ccc@,
-       initc@, use=xterm+256color, use=screen,
+       use=xterm+256setaf, use=screen,
 
 screen-256color-s|GNU Screen with 256 colors and status line,
-       ccc@,
-       initc@, use=xterm+256color, use=screen-s,
+       use=xterm+256setaf, use=screen-s,
 
 screen-256color-bce|GNU Screen with 256 colors and BCE,
-       ccc@,
-       initc@, use=xterm+256color, use=screen-bce,
+       bce, use=xterm+256setaf, use=screen-bce,
 
 screen-256color-bce-s|GNU Screen with 256 colors, BCE, and status line,
-       bce, ccc@,
-       initc@, use=xterm+256color, use=screen-s,
+       bce, use=xterm+256setaf, use=screen-s,
 
 # ======================================================================
 
@@ -23207,4 +23281,12 @@ v3220|LANPAR Vision II model 3220/3221/3222,
 # 2014-03-23
 #      * fix typo in "mlterm" entry (report by Gabriele Balducci) -TD
 #
+# 2014-03-30
+#      * cancel ccc in putty-256color and konsole-256color for consistency
+#        with the cancelled initc capability (patch by Sven Zuhlsdorf).
+#      * add xterm+256setaf building block for various terminals which only
+#        get the 256-color feature half-implemented -TD
+#      * updated "st" entry (leaving the 0.1.1 version as "simpleterm") to
+#        0.4.1 -TD
+#
 ######## SHANTIH!  SHANTIH!  SHANTIH!
index 2e2387a37995e61b41f89e4200a8c01f905b900a..b60dd37ee54424769f595e6efa37c05601f4f343 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (5.9-20140323) unstable; urgency=low
+ncurses6 (5.9-20140329) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Sun, 23 Mar 2014 16:59:54 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Wed, 26 Mar 2014 15:51:51 -0400
 
 ncurses6 (5.9-20131005) unstable; urgency=low
 
index 2e2387a37995e61b41f89e4200a8c01f905b900a..b60dd37ee54424769f595e6efa37c05601f4f343 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (5.9-20140323) unstable; urgency=low
+ncurses6 (5.9-20140329) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Sun, 23 Mar 2014 16:59:54 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Wed, 26 Mar 2014 15:51:51 -0400
 
 ncurses6 (5.9-20131005) unstable; urgency=low
 
index 7b2007622748c5b7dd4827ee8d6ed0b2dbfc5e7b..d6e28d126a3c89ea749146c7c8fb8d4233a3a5ee 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (5.9-20140323) unstable; urgency=low
+ncurses6 (5.9-20140329) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Sun, 23 Mar 2014 16:59:54 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Wed, 26 Mar 2014 15:51:51 -0400
 
 ncurses6 (5.9-20120608) unstable; urgency=low
 
index be02be3e790a006d538da99fc4e8ac15691f917a..1a901a14f562cb7ef947fa47ab3f872146ca8bcd 100644 (file)
@@ -1,4 +1,4 @@
-; $Id: mingw-ncurses.nsi,v 1.33 2014/03/23 20:59:54 tom Exp $\r
+; $Id: mingw-ncurses.nsi,v 1.34 2014/03/26 19:51:51 tom Exp $\r
 \r
 ; TODO add examples\r
 ; TODO bump ABI to 6\r
@@ -10,7 +10,7 @@
 !define VERSION_MAJOR "5"\r
 !define VERSION_MINOR "9"\r
 !define VERSION_YYYY  "2014"\r
-!define VERSION_MMDD  "0323"\r
+!define VERSION_MMDD  "0329"\r
 !define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}\r
 \r
 !define MY_ABI   "5"\r
index dd1d466964a67775e161af3c7fd73abf9ddf22e1..367a4c5b219eb09a99d8d9cb58b419e0aab850c9 100644 (file)
@@ -3,7 +3,7 @@
 Summary: shared libraries for terminal handling
 Name: mingw32-ncurses6
 Version: 5.9
-Release: 20140323
+Release: 20140329
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
index 1a95c452e2fdea5dce5214d8d5a3294be4963aef..ab76bc939e116059a9e272e36cff4ff9fb6eeacc 100644 (file)
@@ -1,7 +1,7 @@
 Summary: shared libraries for terminal handling
 Name: ncurses6
 Version: 5.9
-Release: 20140323
+Release: 20140329
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
index fef78ee0745e198c61445deebc4952fce65f0c79..eeb209a7f4bd0476f352848c4f45c73bb5e003dd 100644 (file)
@@ -46,7 +46,7 @@
 #include <hashed_db.h>
 #include <transform.h>
 
-MODULE_ID("$Id: tic.c,v 1.189 2013/11/16 19:58:09 tom Exp $")
+MODULE_ID("$Id: tic.c,v 1.190 2014/03/29 19:45:18 tom Exp $")
 
 #define STDIN_NAME "<stdin>"
 
@@ -1114,6 +1114,17 @@ check_colors(TERMTYPE *tp)
        if (!VALID_STRING(orig_pair) && !VALID_STRING(orig_colors))
            _nc_warning("expected either op/oc string for resetting colors");
     }
+    if (can_change) {
+       if (!VALID_STRING(initialize_pair) &&
+           !VALID_STRING(initialize_color)) {
+           _nc_warning("expected initc or initp because ccc is given");
+       }
+    } else {
+       if (VALID_STRING(initialize_pair) ||
+           VALID_STRING(initialize_color)) {
+           _nc_warning("expected ccc because initc is given");
+       }
+    }
 }
 
 static char