Groups | Search | Server Info | Keyboard shortcuts | Login | Register


Groups > gnu.bash.bug > #11240

extra \1 in declare -p

Path csiph.com!aioe.org!news.glorb.com!usenet.stanford.edu!not-for-mail
From isabella parakiss <izaberina@gmail.com>
Newsgroups gnu.bash.bug
Subject extra \1 in declare -p
Date Mon, 20 Jul 2015 20:23:56 +0200
Lines 26
Approved bug-bash@gnu.org
Message-ID <mailman.7191.1437416642.904.bug-bash@gnu.org> (permalink)
NNTP-Posting-Host lists.gnu.org
Mime-Version 1.0
Content-Type text/plain; charset=UTF-8
X-Trace usenet.stanford.edu 1437416642 4407 208.118.235.17 (20 Jul 2015 18:24:02 GMT)
X-Complaints-To action@cs.stanford.edu
To bug-bash <bug-bash@gnu.org>
Envelope-to bug-bash@gnu.org
DKIM-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=Qk6dvCSEt6qYlU45EBpN9UKxuRZkNRkdd3BHgEDmDbs=; b=Lh5Pp7zcV7z5YLcdw/DYOt2163/xHCWRYbiFbo7pKsoiQu6Na/w3H/nxPV/VjleuAN LpkPLQx7cfDpFNZULT0bqVBxJHziuKjoN9I7/196bTNuFDyeTPiLgJWLEGkVxrP2Tl4N g/rbY/pAtDRwQF9OziQYslr3A0lFl5uuV6zp8NRIfi3MmaJEZ0H4HZYH6FGerZLT2CiI 9Cl9xQ8bIEgFwPkKJAJQvZuLek4B8YvlOLakQZhuxV0BEG+HpNlms10PgDKaaJdh/s3w lA3W+v/zW2gg97GsBFG+EGhIvgoITqqxsgMwGl5l7l90nlyMlspwV/11vb3A2IIjYy2A vQSQ==
X-Received by 10.107.11.83 with SMTP id v80mr43269595ioi.95.1437416636364; Mon, 20 Jul 2015 11:23:56 -0700 (PDT)
X-detected-operating-system by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value).
X-Received-From 2607:f8b0:4001:c05::22a
X-BeenThere bug-bash@gnu.org
X-Mailman-Version 2.1.14
Precedence list
List-Id Bug reports for the GNU Bourne Again SHell <bug-bash.gnu.org>
List-Unsubscribe <https://lists.gnu.org/mailman/options/bug-bash>, <mailto:bug-bash-request@gnu.org?subject=unsubscribe>
List-Archive <http://lists.gnu.org/archive/html/bug-bash>
List-Post <mailto:bug-bash@gnu.org>
List-Help <mailto:bug-bash-request@gnu.org?subject=help>
List-Subscribe <https://lists.gnu.org/mailman/listinfo/bug-bash>, <mailto:bug-bash-request@gnu.org?subject=subscribe>
Xref aioe.org gnu.bash.bug:11240

Show key headers only | View raw


Hi, about this bug:
http://lists.gnu.org/archive/html/bug-bash/2003-03/msg00093.html

The fix was to add this in lib/sh/shquote.c
      else if (c == CTLESC || c == CTLNUL)
        *r++ = CTLESC;

I think the fix it was applied twice, it should only check this in the
prompt string, right?


Now declare -p produces output that can't be eval'ed.

$ var=$'x\1y\177z'; declare -p var | sed -n l
declare -- var="x\001\001y\001\177z"$


Removing lines 151-152 (from the 4.4 alpha branch) seems to fix this.
The duplicate code keeps checking the prompt in lines 297-298.
(${var@P} is expanded by that part so it should be fine...)
I hope it won't cause other problems.


---
xoxo iza

Back to gnu.bash.bug | Previous | Next | Find similar


Thread

extra \1 in declare -p isabella parakiss <izaberina@gmail.com> - 2015-07-20 20:23 +0200

csiph-web