From unknown Sun Jun 22 17:11:09 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#30724 <30724@debbugs.gnu.org> To: bug#30724 <30724@debbugs.gnu.org> Subject: Status: eshell: escaped tilde is not treated as such Reply-To: bug#30724 <30724@debbugs.gnu.org> Date: Mon, 23 Jun 2025 00:11:09 +0000 retitle 30724 eshell: escaped tilde is not treated as such reassign 30724 emacs submitter 30724 Yegor Timoshenko severity 30724 normal tag 30724 fixed confirmed thanks From debbugs-submit-bounces@debbugs.gnu.org Mon Mar 05 23:56:54 2018 Received: (at submit) by debbugs.gnu.org; 6 Mar 2018 04:56:54 +0000 Received: from localhost ([127.0.0.1]:46721 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1et4ek-0000wL-57 for submit@debbugs.gnu.org; Mon, 05 Mar 2018 23:56:54 -0500 Received: from eggs.gnu.org ([208.118.235.92]:41116) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1et4FS-0000Lp-No for submit@debbugs.gnu.org; Mon, 05 Mar 2018 23:30:46 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1et4FL-0007qB-Qe for submit@debbugs.gnu.org; Mon, 05 Mar 2018 23:30:41 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,T_DKIM_INVALID autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:52808) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1et4FL-0007pv-L5 for submit@debbugs.gnu.org; Mon, 05 Mar 2018 23:30:39 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60046) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1et4FI-0002Oi-DJ for bug-gnu-emacs@gnu.org; Mon, 05 Mar 2018 23:30:39 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1et4FA-0007dT-D0 for bug-gnu-emacs@gnu.org; Mon, 05 Mar 2018 23:30:36 -0500 Received: from mx1.riseup.net ([198.252.153.129]:49599) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1et4F9-0007bB-Qc for bug-gnu-emacs@gnu.org; Mon, 05 Mar 2018 23:30:28 -0500 Received: from piha.riseup.net (piha-pn.riseup.net [10.0.1.163]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (Client CN "*.riseup.net", Issuer "COMODO RSA Domain Validation Secure Server CA" (verified OK)) by mx1.riseup.net (Postfix) with ESMTPS id 8CCCB1A014B for ; Mon, 5 Mar 2018 20:30:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=riseup.net; s=squak; t=1520310626; bh=3tWM/ROHvcpIRLMx+mRygJue9ObJX5PQfD58i/HCycI=; h=Date:From:To:Subject:From; b=TLLuvWUWJdXnoZOpxHKna1qrKOZ5gOup/AT8Ecd/LZqOi282FtCSIhFD1rAFIPelp kwWFbeICcBfkJyDuEL96qXWbcsOFKLpevzGcfYQENvHb37SZvxE/a1ouBbBery8Jrl IDHIjDVnC3MgoevUquojgzPJV0jvcbJ7iEjzYeOc= X-Riseup-User-ID: 41375208EB81280FA87C90837BA7D2CC0C301406FC9A99725CB3CD7749F66141 Received: from [127.0.0.1] (localhost [127.0.0.1]) by piha.riseup.net with ESMTPSA id 2B3699C89 for ; Mon, 5 Mar 2018 20:30:24 -0800 (PST) Date: Tue, 6 Mar 2018 04:30:21 +0000 From: Yegor Timoshenko To: bug-gnu-emacs@gnu.org Subject: eshell: escaped tilde is not treated as such Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -4.1 (----) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Mon, 05 Mar 2018 23:56:53 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -4.1 (----) In M-x eshell (do not run): $ touch \~ $ ls ~ $ rm \~ rm: cannot remove '~': Is a directory I.e. it tried to remove home directory. I've found this by accidentially wiping my home directory, but no worry, I've restored a btrfs snapshot that was made several minutes before that. GNU Emacs 27.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.22.26) of 2018-02-25 From debbugs-submit-bounces@debbugs.gnu.org Thu Mar 08 20:15:25 2018 Received: (at 30724) by debbugs.gnu.org; 9 Mar 2018 01:15:25 +0000 Received: from localhost ([127.0.0.1]:51624 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eu6d3-0004vk-C4 for submit@debbugs.gnu.org; Thu, 08 Mar 2018 20:15:25 -0500 Received: from mail-it0-f48.google.com ([209.85.214.48]:54412) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eu6d1-0004oj-R0; Thu, 08 Mar 2018 20:15:24 -0500 Received: by mail-it0-f48.google.com with SMTP id c11so877070ith.4; Thu, 08 Mar 2018 17:15:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=40HGwJdM+rn0zZz3QC+zomUaLYbBqCy6VF/G76sMLUQ=; b=gKu6GW2v9M16TkGpv5gN+0lbgp8MIVfwaMHI8y8PlnT4WriesVY7PCQRXjgCsGbhDk XROWZDdnSMCOW0LOqvdVVcc32Sk4HCp+NwYHH31C4nwBEya8P0VuOpv+OxH52frxBlxw 25h7pa6QOhVxLdyik4AsFIkIjMt2TQfhNoAQ88yYwhnmn194FdoWrqu/xF+Ak0hnFiPI GhcEO0W3aZp3FAUaVza0jxxuOPbFWze95/JleUs8ksIIgFENkBt+rw2sKukCWxcHJ2Ry pojJrUYjnadeTZxlGlkX3WUcaJQLHfGrV8TXEqBewC3MLnln1SRclf3tuFRLD/JQ6cCd Z+MQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=40HGwJdM+rn0zZz3QC+zomUaLYbBqCy6VF/G76sMLUQ=; b=Sh1lNBNSbNbpbhhvhVhaW+rw/45mFAhk096d4Y4RdZjO3Wp3+fOSipmF5qODl7l8vz f3KLZfdI7YkpdOIJxPo0pmrwwBJIQqkGTR4rOLn1CbugEYULycZ97egQapMn+BI//pmR 9d3MnMUxdl2ovHNx27G9q9TjiwfZ+nojndLhp5gnqPdw68HyAtIEIq08YmT6iZpQ0oYe pbR9P/Ycvt3oYncJq632BntkVBHxmE7chdBXHEu8hB5UeIxpe/ZKJX5YheHKwH56Nyk7 I84+S+o/tsmSzvrPDaY+zv5I7MwsQ+nDr35wB0ups9W5OUvzEcQk6DGxcyDuvlykeZLi zRyA== X-Gm-Message-State: AElRT7Hv4Acht6plQQMxeABP/wf56jVDxOP0XqpAa7G5NPeY8bXAuyhD UF/GNSEYAX26FNqhZsiGpEepPA== X-Google-Smtp-Source: AG47ELt/gUdxlE0EUsiG5rkF6ST6cQagj5sYJHD3ou/b6qXzRTF7vVzqG9ll68guJKPEB+uVT3oZrw== X-Received: by 10.36.178.81 with SMTP id h17mr1253583iti.72.1520558118246; Thu, 08 Mar 2018 17:15:18 -0800 (PST) Received: from zebian (cbl-45-2-119-34.yyz.frontiernetworks.ca. [45.2.119.34]) by smtp.googlemail.com with ESMTPSA id b185sm141080itb.20.2018.03.08.17.15.17 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 08 Mar 2018 17:15:17 -0800 (PST) From: Noam Postavsky To: Yegor Timoshenko Subject: Re: bug#30724: eshell: escaped tilde is not treated as such References: Date: Thu, 08 Mar 2018 20:15:16 -0500 In-Reply-To: (Yegor Timoshenko's message of "Tue, 6 Mar 2018 04:30:21 +0000") Message-ID: <87fu5a123f.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.0.90 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 30724 Cc: 30724@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) tags 30724 + confirmed quit Yegor Timoshenko writes: > In M-x eshell (do not run): > > $ touch \~ > $ ls > ~ > $ rm \~ > rm: cannot remove '~': Is a directory > > I.e. it tried to remove home directory. I've found this by > accidentially wiping my home directory, but no worry, I've restored a > btrfs snapshot that was made several minutes before that. > > GNU Emacs 27.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.22.26) > of 2018-02-25 Stepping through eshell/rm a bit, I see it gets #("~" 0 1 (escaped t)) as an argument. So each command is responsible for handling the escaping correctly. I think every file-handling eshell function needs review for this. From debbugs-submit-bounces@debbugs.gnu.org Fri Jul 06 03:24:29 2018 Received: (at 30724) by debbugs.gnu.org; 6 Jul 2018 07:24:29 +0000 Received: from localhost ([127.0.0.1]:48192 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fbL6T-0005UN-Dt for submit@debbugs.gnu.org; Fri, 06 Jul 2018 03:24:29 -0400 Received: from mail-oi0-f54.google.com ([209.85.218.54]:33371) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fbL6S-0005UB-HV for 30724@debbugs.gnu.org; Fri, 06 Jul 2018 03:24:28 -0400 Received: by mail-oi0-f54.google.com with SMTP id c6-v6so21747129oiy.0 for <30724@debbugs.gnu.org>; Fri, 06 Jul 2018 00:24:28 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:message-id:subject:from:to:cc:date:mime-version; bh=MKQRh0ZCOw3Npu7ZM/A6+dS+U9kWB76b56fa9fiTWwY=; b=OwMmZ3KNl+/Tj6jYT+PAI8b/p2aicLo/YY9CEqS1vht4VDv6NAZKBNvXTt/ROuwVgv +0fVRagHBNZQUuhKZA4VDA8vTlW3GI+Z/XgPHGaT6ZYIYzo4qKF5EwEHWW7zJiCEbxiq 3P8e5KRKG+r4c5w8BhlCTuPzgJ0dAcfP8kj8NC1KoEkx2TFxxCgV/+2qWwWpjvphrw/d rXrUZnOpbJWrNGk32hcL7zMqdvEiRrUipeUymzbGlg5/r6BPVR6MmByle+8NXsZ3dSuN tWdUHsq06OjkG4YuBWnvb1D77jeEiTJHWhcjLheZxf0VAxM1BgjVV20qEJOhL+XaGlLx 5+QQ== X-Gm-Message-State: APt69E1O9IxiLm1SqnACptAOHowmJEihAEURTbe+ZwdjWbm3QxpKSWgr KlZ9gOKVUApVnM5dUYPAadcBNAiQSa4= X-Google-Smtp-Source: AAOMgpeHqLbpaEVXkMPEmZM0cV3VUqRLavMPWY2ttZ7bkfDPTMtsM9C6PCLj0Wa2OWHWI1CubZIk6A== X-Received: by 2002:aca:f007:: with SMTP id o7-v6mr9986329oih.193.1530861862429; Fri, 06 Jul 2018 00:24:22 -0700 (PDT) Received: from fedora-laptop ([2601:2c3:8880:3cc9::4a69]) by smtp.gmail.com with ESMTPSA id o82-v6sm5510401oih.20.2018.07.06.00.24.20 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 06 Jul 2018 00:24:21 -0700 (PDT) Message-ID: <97031714eb3479b466bca0545b76114e4d40e898.camel@jonathanmitchell.org> Subject: eshell: escaped tilde is not treated as such From: Jonathan Kyle Mitchell To: 30724@debbugs.gnu.org Date: Fri, 06 Jul 2018 02:24:20 -0500 Content-Type: multipart/mixed; boundary="=-Eh3fWDD7BlFLgkiogzID" X-Mailer: Evolution 3.28.3 (3.28.3-1.fc28) Mime-Version: 1.0 X-Spam-Score: 0.5 (/) X-Debbugs-Envelope-To: 30724 Cc: Noam Postavsky , "; Yegor Timoshenko" X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.5 (/) --=-Eh3fWDD7BlFLgkiogzID Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit tags 30724 + patch quit I found a way to get eshell to escape special chars. It seems most of the eshell builtin commands that take file arguments are already tagged with the eshell-no-numeric-conversions property. By adding the true part of the if condition in eshell-lisp-command, it is possible to quote the arguments of special filenames. The attached patch checks for "~" and "*". ;; for reference, here's the set of eshell builtins with the ;; eshell-no-numeric-conversions property ./esh-proc.el\0202:(put 'eshell/kill 'eshell-no-numeric-conversions t) ./em-dirs.el\0409:(put 'eshell/cd 'eshell-no-numeric-conversions t) ./em-dirs.el\0472:(put 'eshell/pushd 'eshell-no-numeric-conversions t) ./em-dirs.el\0502:(put 'eshell/popd 'eshell-no-numeric-conversions t) ./esh-ext.el\0261:(put 'eshell/addpath 'eshell-no-numeric-conversions t ./esh-util.el\091: (put \\='find-file \\='eshell-no-numeric- ./em-script.el\0127:(put 'eshell/source 'eshell-no-numeric-conversions ./em-script.el\0140:(put 'eshell/. 'eshell-no-numeric-conversions t) ./em-unix.el\0167:(put 'eshell/man 'eshell-no-numeric-conversions t) ./em-unix.el\0309:(put 'eshell/rm 'eshell-no-numeric-conversions t) ./em-unix.el\0326:(put 'eshell/mkdir 'eshell-no-numeric-conversions t) ./em-unix.el\0342:(put 'eshell/rmdir 'eshell-no-numeric-conversions t) ./em-unix.el\0526:(put 'eshell/mv 'eshell-no-numeric-conversions t) ./em-unix.el\0563:(put 'eshell/cp 'eshell-no-numeric-conversions t) ./em-unix.el\0595:(put 'eshell/ln 'eshell-no-numeric-conversions t) ./em-unix.el\0647:(put 'eshell/cat 'eshell-no-numeric-conversions t) ./em-unix.el\0664:(put 'eshell/make 'eshell-no-numeric-conversions t) ./em-unix.el\01031:(put 'eshell/diff 'eshell-no-numeric-conversions t) ./em-unix.el\01050:(put 'eshell/locate 'eshell-no-numeric-conversions ./em-unix.el\01059:(put 'eshell/occur 'eshell-no-numeric-conversions t) ./esh-cmd.el\01185:(put 'eshell/which 'eshell-no-numeric-conversions t) ./em-ls.el\0336:(put 'eshell/ls 'eshell-no-numeric-conversions t) ./em-tramp.el\097:(put 'eshell/su 'eshell-no-numeric-conversions t) ./em-tramp.el\0139:(put 'eshell/sudo 'eshell-no-numeric-conversions t) -- Jonathan Kyle Mitchell --=-Eh3fWDD7BlFLgkiogzID Content-Disposition: attachment; filename*0=0001-Check-for-filenames-special-to-the-shell-before-runn.pat; filename*1=ch Content-Type: text/x-patch; name="0001-Check-for-filenames-special-to-the-shell-before-runn.patch"; charset="UTF-8" Content-Transfer-Encoding: base64 RnJvbSAxYWFkOTYzYTcxZmNhMWFiZmZmNmQ0NTIyZGRmODNhMDczOTE3MTJhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKb25hdGhhbiBLeWxlIE1pdGNoZWxsIDxreWxlQGpvbmF0aGFu bWl0Y2hlbGwub3JnPgpEYXRlOiBGcmksIDYgSnVsIDIwMTggMDE6NDA6MzIgLTA1MDAKU3ViamVj dDogW1BBVENIXSBDaGVjayBmb3IgZmlsZW5hbWVzIHNwZWNpYWwgdG8gdGhlIHNoZWxsIGJlZm9y ZSBydW5uaW5nIGEKIGNvbW1hbmQKCkZpeCBidWcjMzA3MjQgYnkgY2hlY2tpbmcgaWYgIioiIGFu ZCAifiIgYXJlIGFyZ3VtZW50cyB0byB0aGUgY3VycmVudCBjb21tYW5kCmFuZCBxdW90aW5nIHRo ZW0gcmVsYXRpdmUgdG8gYGRlZmF1bHQtZGlyZWN0b3J5JyBpZiBzby4gIFRoaXMgbGV2ZXJhZ2Vz IHRoZQp0aGUgZmFjdCB0aGF0IHRoZSBleGlzdGluZyBlc2hlbGwgYnVpbHRpbiBjb21tYW5kcyB0 aGF0IGFjY2VwdCBmaWxlIGFyZ3VtZW50cwphcmUgdGFnZ2VkIHdpdGggdGhlIGVzaGVsbC1uby1u dW1lcmljLWNvbnZlcnNpb25zIHByb3BlcnR5LiAgVGhlIGV4aXN0aW5nCmRldGFpbHMgb2YgZXNo ZWxsIGNvbW1hbmQgZXhlY3V0aW9uIGFyZSBsZWZ0IHVuY2hhbmdlZC4KCiogbGlzcC9lc2hlbGwv ZXNoLWNtZC5lbCAoZXNoZWxsLWxpc3AtY29tbWFuZCkKLS0tCiBsaXNwL2VzaGVsbC9lc2gtY21k LmVsIHwgMTcgKysrKysrKysrKysrKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAxNCBpbnNlcnRpb25z KCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpc3AvZXNoZWxsL2VzaC1jbWQuZWwg Yi9saXNwL2VzaGVsbC9lc2gtY21kLmVsCmluZGV4IDYxYzBlYmM3MWQuLmEyMjMwOWE4NWUgMTAw NjQ0Ci0tLSBhL2xpc3AvZXNoZWxsL2VzaC1jbWQuZWwKKysrIGIvbGlzcC9lc2hlbGwvZXNoLWNt ZC5lbApAQCAtMTMxMCw5ICsxMzEwLDIwIEBAIGVzaGVsbC1saXNwLWNvbW1hbmQKIAkJICAoc2V0 cSBlc2hlbGwtbGFzdC1hcmd1bWVudHMgYXJncwogCQkJZXNoZWxsLWxhc3QtY29tbWFuZC1uYW1l CiAJCQkoY29uY2F0ICIjPGZ1bmN0aW9uICIgKHN5bWJvbC1uYW1lIG9iamVjdCkgIj4iKSkKLQkJ ICA7OyBpZiBhbnkgb2YgdGhlIGFyZ3VtZW50cyBhcmUgZmxhZ2dlZCBhcyBudW1iZXJzCi0JCSAg Ozsgd2FpdGluZyBmb3IgY29udmVyc2lvbiwgY29udmVydCB0aGVtIG5vdwotCQkgICh1bmxlc3Mg KGdldCBvYmplY3QgJ2VzaGVsbC1uby1udW1lcmljLWNvbnZlcnNpb25zKQorCQkgIChpZiAoZ2V0 IG9iamVjdCAnZXNoZWxsLW5vLW51bWVyaWMtY29udmVyc2lvbnMpCisJCSAgICAgIDs7IGNoZWNr IGZvciBmaWxlbmFtZXMgc3BlY2lhbCB0byB0aGUgc2hlbGwgYW5kCisJCSAgICAgIDs7IHF1b3Rl IHRoZW0gcmVsYXRpdmUgdG8gYGRlZmF1bHQtZGlyZWN0b3J5JworCQkgICAgICAod2hpbGUgYXJn cworCQkJKGxldCAoKGFyZyAoY2FyIGFyZ3MpKSkKKwkJCSAgKGlmIChhbmQgKHN0cmluZ3AgYXJn KQorCQkJCSAgIChtZW1iZXIgYXJnICcoIn4iICIqIikpKQorCQkJICAgICAgKHNldGNhciBhcmdz IChjb25jYXQgKGZpbGUtbmFtZS1xdW90ZQorCQkJCQkJICAgIChleHBhbmQtZmlsZS1uYW1lCisJ CQkJCQkgICAgIGRlZmF1bHQtZGlyZWN0b3J5KSkKKwkJCQkJCSAgIGFyZykpKSkKKwkJCShzZXRx IGFyZ3MgKGNkciBhcmdzKSkpCisJCSAgICA7OyBpZiBhbnkgb2YgdGhlIGFyZ3VtZW50cyBhcmUg ZmxhZ2dlZCBhcyBudW1iZXJzCisJCSAgICA7OyB3YWl0aW5nIGZvciBjb252ZXJzaW9uLCBjb252 ZXJ0IHRoZW0gbm93CiAJCSAgICAod2hpbGUgYXJncwogCQkgICAgICAobGV0ICgoYXJnIChjYXIg YXJncykpKQogCQkJKGlmIChhbmQgKHN0cmluZ3AgYXJnKQotLSAKMi4xNy4xCgo= --=-Eh3fWDD7BlFLgkiogzID-- From debbugs-submit-bounces@debbugs.gnu.org Sat Jul 07 15:17:43 2018 Received: (at 30724) by debbugs.gnu.org; 7 Jul 2018 19:17:43 +0000 Received: from localhost ([127.0.0.1]:50428 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fbsiF-0008Sw-3X for submit@debbugs.gnu.org; Sat, 07 Jul 2018 15:17:43 -0400 Received: from mail-it0-f45.google.com ([209.85.214.45]:33215) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fbsiA-0008Se-35 for 30724@debbugs.gnu.org; Sat, 07 Jul 2018 15:17:38 -0400 Received: by mail-it0-f45.google.com with SMTP id y124-v6so8145788itc.0 for <30724@debbugs.gnu.org>; Sat, 07 Jul 2018 12:17:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=BZc0Q9+fubNX9JnYHbTtAqhjQfo9gj/yNHr55F6++e4=; b=gi3h6hDWA1ObXhfgpNnRav+WPHRgtrXqwy77hQ/acPp5PLW1Xn4G1p1NOmF05nrEmi tJITsw7xhP1J8kbj7NmPc6Hd2hHIfmFecK4251rH+FXC++V6mVmiEshLRbWt4u7Opfg9 3f0zg6Jot6VM/IpeTG0KWJeE0YNRF7dnIodgmbhQ4U7uFgXhK1aGNSraUr3xWCDQ57/q TIhcSaWaN11MdHN/eFLJSRqIHen6Jmqi9DfTdgIh1ZO6z9vBUw+cxMalXjcalC5mIAJl mMBpYQ4jl9D5hlEPLVo7mzu5G0cLi+ONv1bVzu0U/VfRIBTf6EgtFAfcg+dW0gpAcoZS Q06Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=BZc0Q9+fubNX9JnYHbTtAqhjQfo9gj/yNHr55F6++e4=; b=HsHNCw7JPnp9jK/sO5wMqq28QLOpr2gSXvN+Dzis+7g1SZAZ01OHqRKye25wEr/FfI ulIHyDkVRtN4nea+wFsdzjmXNdwg+O0B+gpvaLY72a2tDnUmRi+7u3HMVbutwvAPFuMb z7zhTP2jElrT1bCqlVKTRIpPw9tfH8wY32AUMfEE2SVcO+wCewN9OEQ+ing/zdQHL4Bg Qp7WT6Q7hN2H+qUvBfjRKIma6UVlNbGwPnEXQqMDHtoPGGj7fm3ZsapQWHQZUIrVpg2y 9Cz4dRmXqkoQuUlousHvYpiwiODE5YBVJf8tAOKpOKRPzCxM5hrBWlHpS16xrUwEj2qB B5GQ== X-Gm-Message-State: APt69E30HNU6BYUJxCsrui3RAtaNsorFr56aSMbsao9RXGNei8z7ek5Q 9G06iD1o+0GZSen9oLCA9s4= X-Google-Smtp-Source: AAOMgpfTE0VKjhujFfF2FTblWNHWBCH4/rBVf8Z7wH5l+L5bNOZWeMY9JzoCCc0D3ig7ibVBuNvvDQ== X-Received: by 2002:a24:a343:: with SMTP id p64-v6mr12013393ite.61.1530991052521; Sat, 07 Jul 2018 12:17:32 -0700 (PDT) Received: from zebian (cbl-45-2-119-34.yyz.frontiernetworks.ca. [45.2.119.34]) by smtp.googlemail.com with ESMTPSA id v192-v6sm1696056itc.2.2018.07.07.12.17.31 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Sat, 07 Jul 2018 12:17:31 -0700 (PDT) From: Noam Postavsky To: Jonathan Kyle Mitchell Subject: Re: bug#30724: eshell: escaped tilde is not treated as such References: <97031714eb3479b466bca0545b76114e4d40e898.camel@jonathanmitchell.org> Date: Sat, 07 Jul 2018 15:17:30 -0400 In-Reply-To: <97031714eb3479b466bca0545b76114e4d40e898.camel@jonathanmitchell.org> (Jonathan Kyle Mitchell's message of "Fri, 06 Jul 2018 02:24:20 -0500") Message-ID: <87zhz2dfed.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 30724 Cc: 30724@debbugs.gnu.org, Yegor Timoshenko X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Jonathan Kyle Mitchell writes: > tags 30724 + patch > quit You have to send this control@debbugs.gnu.org to have effect, generally you should use Bcc so that further replies don't go there (which is why you don't see it when other people do this). > I found a way to get eshell to escape special chars. It seems most of > the eshell builtin commands that take file arguments are already tagged > with the eshell-no-numeric-conversions property. By adding the true > part of the if condition in eshell-lisp-command, it is possible to > quote the arguments of special filenames. The attached patch checks > for "~" and "*". Perhaps we should distinguish between file and non-numeric arguments though? E.g., I think the file-name-quote might not make sense for the commands below: > ./esh-proc.el\0202:(put 'eshell/kill 'eshell-no-numeric-conversions t) > ./em-unix.el\0167:(put 'eshell/man 'eshell-no-numeric-conversions t) > ./em-unix.el\0664:(put 'eshell/make 'eshell-no-numeric-conversions t) > ./em-unix.el\01050:(put 'eshell/locate 'eshell-no-numeric-conversions > ./em-unix.el\01059:(put 'eshell/occur 'eshell-no-numeric-conversions t) > ./esh-cmd.el\01185:(put 'eshell/which 'eshell-no-numeric-conversions t) > ./em-tramp.el\097:(put 'eshell/su 'eshell-no-numeric-conversions t) > ./em-tramp.el\0139:(put 'eshell/sudo 'eshell-no-numeric-conversions t) > Fix bug#30724 by checking if "*" and "~" are arguments to the current command > and quoting them relative to `default-directory' if so. This leverages the > the fact that the existing eshell builtin commands that accept file arguments > are tagged with the eshell-no-numeric-conversions property. The existing > details of eshell command execution are left unchanged. > > * lisp/eshell/esh-cmd.el (eshell-lisp-command) The ChangeLog item should at the beginning, as in, * lisp/eshell/esh-cmd.el (eshell-lisp-command): Fix bug#30724 by checking if "*" and "~" are arguments to the current command ... From debbugs-submit-bounces@debbugs.gnu.org Sun Jul 15 13:18:36 2018 Received: (at 30724) by debbugs.gnu.org; 15 Jul 2018 17:18:36 +0000 Received: from localhost ([127.0.0.1]:42001 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fekfM-0002WG-2a for submit@debbugs.gnu.org; Sun, 15 Jul 2018 13:18:36 -0400 Received: from mail-oi0-f41.google.com ([209.85.218.41]:43810) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fekfK-0002W3-Hs for 30724@debbugs.gnu.org; Sun, 15 Jul 2018 13:18:35 -0400 Received: by mail-oi0-f41.google.com with SMTP id b15-v6so70620981oib.10 for <30724@debbugs.gnu.org>; Sun, 15 Jul 2018 10:18:34 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:message-id:subject:from:to:cc:date:in-reply-to :references:mime-version; bh=gqvslWDqFEqweCHa8RUIJ/HGY8k90Va9QJa2xPhIiqA=; b=pET8juuv1kSKjnwEGz6yY/zLKdK7mkFK6NCv1WrXsK8wKYK1Lz2LzxmQTuG+ab4fyx 6RUqtW1O8FyIhki14uVN9zL+0b9ESVZ5dgr4loYsNeDiZVEkytNYSqqmsrMuwLhKppfn psBGqnrZT+CP+m5HuJtNx4RFKxp8QJVoJjAcMhAXy3718duxD1lXypFsKLfN6SOZCvmr d60wTTEFa109KBoC17Ogjuwr09ph5Y+THsJll3dC9CkGO/0Jt9PE8vv5Gotl2RLao3yb TLpCyaCxPAnbtUVK+nwqiz1K0S5OoafRa2zbObx47jxOSByU8bH9WBz0SXoDHwJMOzkD HGrQ== X-Gm-Message-State: AOUpUlEryz1eDdi9QLIt+XR1RvXLJMirU1SVnzmGZumFNd7x1MdfDeEc JFNEs2srpTqEY0sH1vcSR+k= X-Google-Smtp-Source: AAOMgpf+oeI7AYkDlz0hWObrmdp3XNEjmXOJEGKLWAYO9XZJMrwOlF/7uK4Q960BWdgM/dzGD2gjyA== X-Received: by 2002:aca:2dca:: with SMTP id t193-v6mr15427083oit.253.1531675108599; Sun, 15 Jul 2018 10:18:28 -0700 (PDT) Received: from fedora-laptop ([2601:2c3:8880:3cc9::c6c8]) by smtp.gmail.com with ESMTPSA id i132-v6sm18633652oif.20.2018.07.15.10.18.27 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Sun, 15 Jul 2018 10:18:27 -0700 (PDT) Message-ID: <88c6e336a6a9a5362a1e878b2df9d7ffffc61f7a.camel@jonathanmitchell.org> Subject: Re: bug#30724: eshell: escaped tilde is not treated as such From: Jonathan Kyle Mitchell To: Noam Postavsky Date: Sun, 15 Jul 2018 12:18:26 -0500 In-Reply-To: <87zhz2dfed.fsf@gmail.com> References: <97031714eb3479b466bca0545b76114e4d40e898.camel@jonathanmitchell.org> <87zhz2dfed.fsf@gmail.com> Content-Type: multipart/mixed; boundary="=-UbnY2w9+55fBgneexWhi" X-Mailer: Evolution 3.28.3 (3.28.3-1.fc28) Mime-Version: 1.0 X-Spam-Score: 0.5 (/) X-Debbugs-Envelope-To: 30724 Cc: 30724@debbugs.gnu.org, Yegor Timoshenko X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.5 (/) --=-UbnY2w9+55fBgneexWhi Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit On Sat, 2018-07-07 at 15:17 -0400, Noam Postavsky wrote: > Perhaps we should distinguish between file and non-numeric arguments > though? E.g., I think the file-name-quote might not make sense for > the > commands below: > > > ./esh-proc.el\0202:(put 'eshell/kill 'eshell-no-numeric-conversions > > t) > > ./em-unix.el\0167:(put 'eshell/man 'eshell-no-numeric-conversions > > t) > > ./em-unix.el\0664:(put 'eshell/make 'eshell-no-numeric-conversions > > t) > > ./em-unix.el\01050:(put 'eshell/locate 'eshell-no-numeric- > > conversions > > ./em-unix.el\01059:(put 'eshell/occur 'eshell-no-numeric- > > conversions t) > > ./esh-cmd.el\01185:(put 'eshell/which 'eshell-no-numeric- > > conversions t) > > ./em-tramp.el\097:(put 'eshell/su 'eshell-no-numeric-conversions t) > > ./em-tramp.el\0139:(put 'eshell/sudo 'eshell-no-numeric-conversions > > t) After tracing through the execution of eshell some more, I noticed that eshell sets an escaped text property on the arguments when the user escaped them with `\' or quote characters but there is nothing in eshell that does anything with it apparently. I've attached a new patch that checks for the escaped text property on any single character argumentand. I've also added a new symbol property to the following functions that take filename arguments and use that to check instead of the eshell-no-numeric-conversions property. (eshell/cd) (eshell/pushd) (eshell/popd) (eshell/ls) (eshell/rm) (eshell/mkdir) (eshell/rmdir) (eshell/mv) (eshell/cp) (eshell/ln) (eshell/cat) (eshell/du) (eshell/diff) (eshell/addpath) > > The ChangeLog item should at the beginning, as in, > > * lisp/eshell/esh-cmd.el (eshell-lisp-command): Fix bug#30724 by > checking if "*" and "~" are arguments to the current command ... Thanks for the comments and suggestions, I fixed the commit message in the new patch. -- Jonathan Kyle Mitchell --=-UbnY2w9+55fBgneexWhi Content-Disposition: attachment; filename="0001-Check-for-special-filenames-in-eshell-Bug-30724.patch" Content-Type: text/x-patch; name="0001-Check-for-special-filenames-in-eshell-Bug-30724.patch"; charset="UTF-8" Content-Transfer-Encoding: base64 RnJvbSA5OGMxNWEyNzNiMGZmZjM5NDQ3NDI3YTQ3NDQyODU2Y2UxMTYxYmFkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKb25hdGhhbiBLeWxlIE1pdGNoZWxsIDxreWxlQGpvbmF0aGFu bWl0Y2hlbGwub3JnPgpEYXRlOiBTdW4sIDE1IEp1bCAyMDE4IDEwOjU3OjIzIC0wNTAwClN1Ympl Y3Q6IFtQQVRDSF0gQ2hlY2sgZm9yIHNwZWNpYWwgZmlsZW5hbWVzIGluIGVzaGVsbCAoQnVnIzMw NzI0KQoKCSogbGlzcC9lc2hlbGwvZW0tZGlycy5lbCAoZXNoZWxsL2NkKTogQWRkCgllc2hlbGwt ZXNjYXBlLXNwZWNpYWwtZmlsZW5hbWVzIHRvIHN5bWJvbCBwbGlzdC4KCShlc2hlbGwvcHVzaGQp OiBMaWtld2lzZS4KCShlc2hlbGwvcG9wZCk6IExpa2V3aXNlLgoKCSogbGlzcC9lc2hlbGwvZW0t bHMuZWwgKGVzaGVsbC9scyk6IEFkZAoJZXNoZWxsLWVzY2FwZS1zcGVjaWFsLWZpbGVuYW1lcyB0 byBzeW1ib2wgcGxpc3QuCgoJKiBsaXNwL2VzaGVsbC9lbS11bml4LmVsIChlc2hlbGwvcm0pOiBB ZGQKCWVzaGVsbC1lc2NhcGUtc3BlY2lhbC1maWxlbmFtZXMgdG8gc3ltYm9sIHBsaXN0LgoJKGVz aGVsbC9ta2Rpcik6IExpa2V3aXNlLgoJKGVzaGVsbC9ybWRpcik6IExpa2V3aXNlLgoJKGVzaGVs bC9tdik6IExpa2V3aXNlLgoJKGVzaGVsbC9jcCk6IExpa2V3aXNlLgoJKGVzaGVsbC9sbik6IExp a2V3aXNlLgoJKGVzaGVsbC9jYXQpOiBMaWtld2lzZS4KCShlc2hlbGwvZHUpOiBMaWtld2lzZS4K CShlc2hlbGwvZGlmZik6IExpa2V3aXNlLgoKCSogbGlzcC9lc2hlbGwvZXNoLWNtZC5lbCAoZXNo ZWxsLWxpc3AtY29tbWFuZCk6CUNoZWNrIGZvcgoJc2luZ2xlIGNoYXJhY3RlciBlc2NhcGVkIHN0 cmluZyBhcmd1bWVudHMgKEJ1ZyMzMDcyNCkuCgoJKiBsaXNwL2VzaGVsbC9lc2gtZXh0LmVsIChl c2hlbGwvYWRkcGF0aCk6IEFkZAoJZXNoZWxsLWVzY2FwZS1zcGVjaWFsLWZpbGVuYW1lcyB0byBz eW1ib2wgcGxpc3QuCi0tLQogbGlzcC9lc2hlbGwvZW0tZGlycy5lbCB8ICAzICsrKwogbGlzcC9l c2hlbGwvZW0tbHMuZWwgICB8ICAxICsKIGxpc3AvZXNoZWxsL2VtLXVuaXguZWwgfCAxMCArKysr KysrKysrCiBsaXNwL2VzaGVsbC9lc2gtY21kLmVsIHwgMzIgKysrKysrKysrKysrKysrKysrKysr LS0tLS0tLS0tLS0KIGxpc3AvZXNoZWxsL2VzaC1leHQuZWwgfCAgMSArCiA1IGZpbGVzIGNoYW5n ZWQsIDM2IGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpc3Av ZXNoZWxsL2VtLWRpcnMuZWwgYi9saXNwL2VzaGVsbC9lbS1kaXJzLmVsCmluZGV4IGVjMzgwZTY3 MDEuLjI1ZGQ2ZTA4ODcgMTAwNjQ0Ci0tLSBhL2xpc3AvZXNoZWxsL2VtLWRpcnMuZWwKKysrIGIv bGlzcC9lc2hlbGwvZW0tZGlycy5lbApAQCAtNDA3LDYgKzQwNyw3IEBAIGVzaGVsbC9jZAogCW5p bCkpKSkKIAogKHB1dCAnZXNoZWxsL2NkICdlc2hlbGwtbm8tbnVtZXJpYy1jb252ZXJzaW9ucyB0 KQorKHB1dCAnZXNoZWxsL2NkICdlc2hlbGwtZXNjYXBlLXNwZWNpYWwtZmlsZW5hbWVzIHQpCiAK IChkZWZ1biBlc2hlbGwtYWRkLXRvLWRpci1yaW5nIChwYXRoKQogICAiQWRkIFBBVEggdG8gdGhl IGxhc3QtZGlyLXJpbmcsIGlmIGFwcGxpY2FibGUuIgpAQCAtNDcwLDYgKzQ3MSw3IEBAIGVzaGVs bC9wdXNoZAogICBuaWwpCiAKIChwdXQgJ2VzaGVsbC9wdXNoZCAnZXNoZWxsLW5vLW51bWVyaWMt Y29udmVyc2lvbnMgdCkKKyhwdXQgJ2VzaGVsbC9wdXNoZCAnZXNoZWxsLWVzY2FwZS1zcGVjaWFs LWZpbGVuYW1lcyB0KQogCiA7OzsgcG9wZCBbK25dCiAoZGVmdW4gZXNoZWxsL3BvcGQgKCZyZXN0 IGFyZ3MpCkBAIC01MDAsNiArNTAyLDcgQEAgZXNoZWxsL3BvcGQKICAgbmlsKQogCiAocHV0ICdl c2hlbGwvcG9wZCAnZXNoZWxsLW5vLW51bWVyaWMtY29udmVyc2lvbnMgdCkKKyhwdXQgJ2VzaGVs bC9wb3BkICdlc2hlbGwtZXNjYXBlLXNwZWNpYWwtZmlsZW5hbWVzIHQpCiAKIChkZWZ1biBlc2hl bGwvZGlycyAoJm9wdGlvbmFsIGlmLXZlcmJvc2UpCiAgICJJbXBsZW1lbnRhdGlvbiBvZiBkaXJz IGluIExpc3AuIgpkaWZmIC0tZ2l0IGEvbGlzcC9lc2hlbGwvZW0tbHMuZWwgYi9saXNwL2VzaGVs bC9lbS1scy5lbAppbmRleCA5MDBiMjg5MDViLi4zOTk1YmQ5YzYxIDEwMDY0NAotLS0gYS9saXNw L2VzaGVsbC9lbS1scy5lbAorKysgYi9saXNwL2VzaGVsbC9lbS1scy5lbApAQCAtMzM0LDYgKzMz NCw3IEBAIGVzaGVsbC9scwogICAgIChhcHBseSAnZXNoZWxsLWRvLWxzIGFyZ3MpKSkKIAogKHB1 dCAnZXNoZWxsL2xzICdlc2hlbGwtbm8tbnVtZXJpYy1jb252ZXJzaW9ucyB0KQorKHB1dCAnZXNo ZWxsL2xzICdlc2hlbGwtZXNjYXBlLXNwZWNpYWwtZmlsZW5hbWVzIHQpCiAKIChkZWNsYXJlLWZ1 bmN0aW9uIGVzaGVsbC1nbG9iLXJlZ2V4cCAiZW0tZ2xvYiIgKHBhdHRlcm4pKQogCmRpZmYgLS1n aXQgYS9saXNwL2VzaGVsbC9lbS11bml4LmVsIGIvbGlzcC9lc2hlbGwvZW0tdW5peC5lbAppbmRl eCBhMThmYjg1NTA3Li5lODIxYjMxNWI4IDEwMDY0NAotLS0gYS9saXNwL2VzaGVsbC9lbS11bml4 LmVsCisrKyBiL2xpc3AvZXNoZWxsL2VtLXVuaXguZWwKQEAgLTMwNyw2ICszMDcsNyBAQCBlc2hl bGwvcm0KICAgIG5pbCkpCiAKIChwdXQgJ2VzaGVsbC9ybSAnZXNoZWxsLW5vLW51bWVyaWMtY29u dmVyc2lvbnMgdCkKKyhwdXQgJ2VzaGVsbC9ybSAnZXNoZWxsLWVzY2FwZS1zcGVjaWFsLWZpbGVu YW1lcyB0KQogCiAoZGVmdW4gZXNoZWxsL21rZGlyICgmcmVzdCBhcmdzKQogICAiSW1wbGVtZW50 YXRpb24gb2YgbWtkaXIgaW4gTGlzcC4iCkBAIC0zMjQsNiArMzI1LDcgQEAgZXNoZWxsL21rZGly CiAgICBuaWwpKQogCiAocHV0ICdlc2hlbGwvbWtkaXIgJ2VzaGVsbC1uby1udW1lcmljLWNvbnZl cnNpb25zIHQpCisocHV0ICdlc2hlbGwvbWtkaXIgJ2VzaGVsbC1lc2NhcGUtc3BlY2lhbC1maWxl bmFtZXMgdCkKIAogKGRlZnVuIGVzaGVsbC9ybWRpciAoJnJlc3QgYXJncykKICAgIkltcGxlbWVu dGF0aW9uIG9mIHJtZGlyIGluIExpc3AuIgpAQCAtMzQwLDYgKzM0Miw3IEBAIGVzaGVsbC9ybWRp cgogICAgbmlsKSkKIAogKHB1dCAnZXNoZWxsL3JtZGlyICdlc2hlbGwtbm8tbnVtZXJpYy1jb252 ZXJzaW9ucyB0KQorKHB1dCAnZXNoZWxsL3JtZGlyICdlc2hlbGwtZXNjYXBlLXNwZWNpYWwtZmls ZW5hbWVzIHQpCiAKIChkZWZ2YXIgbm8tZGVyZWZlcmVuY2UpCiAKQEAgLTUyNCw2ICs1MjcsNyBA QCBlc2hlbGwvbXYKIAkJCSAgICAgZXNoZWxsLW12LW92ZXJ3cml0ZS1maWxlcykpKSkKIAogKHB1 dCAnZXNoZWxsL212ICdlc2hlbGwtbm8tbnVtZXJpYy1jb252ZXJzaW9ucyB0KQorKHB1dCAnZXNo ZWxsL212ICdlc2hlbGwtZXNjYXBlLXNwZWNpYWwtZmlsZW5hbWVzIHQpCiAKIChkZWZ1biBlc2hl bGwvY3AgKCZyZXN0IGFyZ3MpCiAgICJJbXBsZW1lbnRhdGlvbiBvZiBjcCBpbiBMaXNwLiIKQEAg LTU2MSw2ICs1NjUsNyBAQCBlc2hlbGwvY3AKIAkJCSAgIGVzaGVsbC1jcC1vdmVyd3JpdGUtZmls ZXMgcHJlc2VydmUpKSkKIAogKHB1dCAnZXNoZWxsL2NwICdlc2hlbGwtbm8tbnVtZXJpYy1jb252 ZXJzaW9ucyB0KQorKHB1dCAnZXNoZWxsL2NwICdlc2hlbGwtZXNjYXBlLXNwZWNpYWwtZmlsZW5h bWVzIHQpCiAKIChkZWZ1biBlc2hlbGwvbG4gKCZyZXN0IGFyZ3MpCiAgICJJbXBsZW1lbnRhdGlv biBvZiBsbiBpbiBMaXNwLiIKQEAgLTU5Myw2ICs1OTgsNyBAQCBlc2hlbGwvbG4KIAkJCSAgICAg ZXNoZWxsLWxuLW92ZXJ3cml0ZS1maWxlcykpKSkKIAogKHB1dCAnZXNoZWxsL2xuICdlc2hlbGwt bm8tbnVtZXJpYy1jb252ZXJzaW9ucyB0KQorKHB1dCAnZXNoZWxsL2xuICdlc2hlbGwtZXNjYXBl LXNwZWNpYWwtZmlsZW5hbWVzIHQpCiAKIChkZWZ1biBlc2hlbGwvY2F0ICgmcmVzdCBhcmdzKQog ICAiSW1wbGVtZW50YXRpb24gb2YgY2F0IGluIExpc3AuCkBAIC02NDUsNiArNjUxLDcgQEAgZXNo ZWxsL2NhdAogICAgICAoc2V0cSBlc2hlbGwtZW5zdXJlLW5ld2xpbmUtcCBuaWwpKSkpCiAKIChw dXQgJ2VzaGVsbC9jYXQgJ2VzaGVsbC1uby1udW1lcmljLWNvbnZlcnNpb25zIHQpCisocHV0ICdl c2hlbGwvY2F0ICdlc2hlbGwtZXNjYXBlLXNwZWNpYWwtZmlsZW5hbWVzIHQpCiAKIDs7IHNwZWNp YWwgZnJvbnQtZW5kIGZ1bmN0aW9ucyBmb3IgY29tcGlsYXRpb24tbW9kZSBidWZmZXJzCiAKQEAg LTkyNyw2ICs5MzQsOCBAQCBlc2hlbGwvZHUKIAkgICAgIChlc2hlbGwtcHJpbnQgKGNvbmNhdCAo ZXNoZWxsLWR1LXNpemUtc3RyaW5nIHNpemUpCiAJCQkJICAgInRvdGFsXG4iKSkpKSkpKSkKIAor KHB1dCAnZXNoZWxsL2R1ICdlc2hlbGwtZXNjYXBlLXNwZWNpYWwtZmlsZW5hbWVzIHQpCisKIChk ZWZ2YXIgZXNoZWxsLXRpbWUtc3RhcnQgbmlsKQogCiAoZGVmdW4gZXNoZWxsLXNob3ctZWxhcHNl ZC10aW1lICgpCkBAIC0xMDI5LDYgKzEwMzgsNyBAQCBlc2hlbGwvZGlmZgogICBuaWwpCiAKIChw dXQgJ2VzaGVsbC9kaWZmICdlc2hlbGwtbm8tbnVtZXJpYy1jb252ZXJzaW9ucyB0KQorKHB1dCAn ZXNoZWxsL2RpZmYgJ2VzaGVsbC1lc2NhcGUtc3BlY2lhbC1maWxlbmFtZXMgdCkKIAogKGRlZnZh ciBsb2NhdGUtaGlzdG9yeS1saXN0KQogCmRpZmYgLS1naXQgYS9saXNwL2VzaGVsbC9lc2gtY21k LmVsIGIvbGlzcC9lc2hlbGwvZXNoLWNtZC5lbAppbmRleCA2MWMwZWJjNzFkLi44ZDUyYjlmYzlj IDEwMDY0NAotLS0gYS9saXNwL2VzaGVsbC9lc2gtY21kLmVsCisrKyBiL2xpc3AvZXNoZWxsL2Vz aC1jbWQuZWwKQEAgLTEzMTAsMTcgKzEzMTAsMjcgQEAgZXNoZWxsLWxpc3AtY29tbWFuZAogCQkg IChzZXRxIGVzaGVsbC1sYXN0LWFyZ3VtZW50cyBhcmdzCiAJCQllc2hlbGwtbGFzdC1jb21tYW5k LW5hbWUKIAkJCShjb25jYXQgIiM8ZnVuY3Rpb24gIiAoc3ltYm9sLW5hbWUgb2JqZWN0KSAiPiIp KQotCQkgIDs7IGlmIGFueSBvZiB0aGUgYXJndW1lbnRzIGFyZSBmbGFnZ2VkIGFzIG51bWJlcnMK LQkJICA7OyB3YWl0aW5nIGZvciBjb252ZXJzaW9uLCBjb252ZXJ0IHRoZW0gbm93Ci0JCSAgKHVu bGVzcyAoZ2V0IG9iamVjdCAnZXNoZWxsLW5vLW51bWVyaWMtY29udmVyc2lvbnMpCi0JCSAgICAo d2hpbGUgYXJncwotCQkgICAgICAobGV0ICgoYXJnIChjYXIgYXJncykpKQotCQkJKGlmIChhbmQg KHN0cmluZ3AgYXJnKQotCQkJCSAoPiAobGVuZ3RoIGFyZykgMCkKLQkJCQkgKG5vdCAodGV4dC1w cm9wZXJ0eS1ub3QtYWxsCi0JCQkJICAgICAgIDAgKGxlbmd0aCBhcmcpICdudW1iZXIgdCBhcmcp KSkKLQkJCSAgICAoc2V0Y2FyIGFyZ3MgKHN0cmluZy10by1udW1iZXIgYXJnKSkpKQotCQkgICAg ICAoc2V0cSBhcmdzIChjZHIgYXJncykpKSkKKwkJICAobGV0ICgobnVtZXJpYyAobm90IChnZXQg b2JqZWN0CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2VzaGVs bC1uby1udW1lcmljLWNvbnZlcnNpb25zKSkpCisJCQkoZXNjYXBlZCAoZ2V0IG9iamVjdCAnZXNo ZWxsLWVzY2FwZS1zcGVjaWFsLWZpbGVuYW1lcykpKQorCQkgICAgKHdoZW4gKG9yIG51bWVyaWMg ZXNjYXBlZCkKKwkJICAgICAgKHdoaWxlIGFyZ3MKKwkJCShsZXQgKChhcmcgKGNhciBhcmdzKSkp CisJCQkgIChjb25kICgoYW5kIG51bWVyaWMgKHN0cmluZ3AgYXJnKSAoPiAobGVuZ3RoIGFyZykg MCkKKwkJCQkgICAgICAodGV4dC1wcm9wZXJ0eS1hbnkgMCAobGVuZ3RoIGFyZykKKwkJCQkJCQkg J251bWJlciB0IGFyZykpCisJCQkJIDs7IGlmIGFueSBvZiB0aGUgYXJndW1lbnRzIGFyZSBmbGFn Z2VkIGFzCisJCQkJIDs7IG51bWJlcnMgd2FpdGluZyBmb3IgY29udmVyc2lvbiwgY29udmVydAor CQkJCSA7OyB0aGVtIG5vdworCQkJCSAoc2V0Y2FyIGFyZ3MgKHN0cmluZy10by1udW1iZXIgYXJn KSkpCisJCQkJKChhbmQgZXNjYXBlZCAoc3RyaW5ncCBhcmcpICg9IChsZW5ndGggYXJnKSAxKQor CQkJCSAgICAgICh0ZXh0LXByb3BlcnR5LWFueSAwIChsZW5ndGggYXJnKQorCQkJCQkJCSAnZXNj YXBlZCB0IGFyZykpCisJCQkJIDs7IGlmIGFueSBvZiB0aGUgYXJndW1lbnRzIGFyZSBzaW5nbGUK KwkJCQkgOzsgY2hhcmFjdGVyIGVzY2FwZWQgZmlsZW5hbWVzLAorCQkJCSA7OyBwcmVwZW5kICIu LyIKKwkJCQkgKHNldGNhciBhcmdzIChjb25jYXQgIi4vIiBhcmcpKSkpKQorCQkJKHNldHEgYXJn cyAoY2RyIGFyZ3MpKSkpKQogCQkgIChlc2hlbGwtYXBwbHkgb2JqZWN0IGVzaGVsbC1sYXN0LWFy Z3VtZW50cykpCiAJICAgICAgKHNldHEgZXNoZWxsLWxhc3QtYXJndW1lbnRzIGFyZ3MKIAkJICAg IGVzaGVsbC1sYXN0LWNvbW1hbmQtbmFtZSAiIzxMaXNwIG9iamVjdD4iKQpkaWZmIC0tZ2l0IGEv bGlzcC9lc2hlbGwvZXNoLWV4dC5lbCBiL2xpc3AvZXNoZWxsL2VzaC1leHQuZWwKaW5kZXggYmE1 MTgyZGViNC4uOGNiMGY2ODVhNCAxMDA2NDQKLS0tIGEvbGlzcC9lc2hlbGwvZXNoLWV4dC5lbAor KysgYi9saXNwL2VzaGVsbC9lc2gtZXh0LmVsCkBAIC0yNTksNiArMjU5LDcgQEAgZXNoZWxsL2Fk ZHBhdGgKICAgICAgICAoZXNoZWxsLXByaW50biBkaXIpKSkpKQogCiAocHV0ICdlc2hlbGwvYWRk cGF0aCAnZXNoZWxsLW5vLW51bWVyaWMtY29udmVyc2lvbnMgdCkKKyhwdXQgJ2VzaGVsbC9hZGRw YXRoICdlc2hlbGwtZXNjYXBlLXNwZWNpYWwtZmlsZW5hbWVzIHQpCiAKIChkZWZ1biBlc2hlbGwt c2NyaXB0LWludGVycHJldGVyIChmaWxlKQogICAiRXh0cmFjdCB0aGUgc2NyaXB0IHRvIHJ1biBm cm9tIEZJTEUsIGlmIGl0IGhhcyAjITxpbnRlcnA+IGluIGl0LgotLSAKMi4xNy4xCgo= --=-UbnY2w9+55fBgneexWhi-- From debbugs-submit-bounces@debbugs.gnu.org Mon Jul 16 20:14:13 2018 Received: (at 30724) by debbugs.gnu.org; 17 Jul 2018 00:14:13 +0000 Received: from localhost ([127.0.0.1]:44252 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ffDd7-0000PP-1T for submit@debbugs.gnu.org; Mon, 16 Jul 2018 20:14:13 -0400 Received: from mail-io0-f175.google.com ([209.85.223.175]:41974) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ffDd5-0000PC-Ot for 30724@debbugs.gnu.org; Mon, 16 Jul 2018 20:14:12 -0400 Received: by mail-io0-f175.google.com with SMTP id q9-v6so39590458ioj.8 for <30724@debbugs.gnu.org>; Mon, 16 Jul 2018 17:14:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=YFkcF2zPaIlPP4IrAjX5ClVBcTCh4vH9ITX3sYo5m8E=; b=eJntJFzJbVA6pSWI+Jdg7OhbHK4zlXGP5LhrY6Zj4NGRrTryF8LjD6QZGImHNgEyjH X8oZCReNR6f7lAKyygCPU4rENx4VsFR/2hnfAgPAE4jUTY/EFDvh0wZmq3fni30Q6wio K+blU4DA/wOjcZy93qiyL2lJb9rwbfdOr573pXyQbPPj+ew28WUsPjvlWbXRCVejvl1L DETLzbPfAbq3qFOMSqdOyyGh4z/SpCkEOiUF9MRQxTVAmRBPdn9aLL/WEW/1xTlPKQeI xf3PrZ1FVCKRKapQ44rJmivW4bWERu6/FYIO8dsJe0LwjLBUzyUPBLRkGGCWFo9cW26D KVMw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=YFkcF2zPaIlPP4IrAjX5ClVBcTCh4vH9ITX3sYo5m8E=; b=qQxsFnM0ChrO6Du7LwdzEtIoZP5DUs441UWzmcNIASOHpRO2gQpWAs/VNVgwDTricc HbIWdQvRi8URCYThBzxTXWOMEcSs1ZC5rI5VTTzHLfdOsq2WDGJG++Cp57HdYNbJwq5d 1j33FttufJgAvobhW/ZWe3n3IMp3bYf8MFZTI++oTr28JGWlgSc2LTBoyE5pt3e9/qFw gAJx1jsSQLQI4R95L5ZPAbtG02DJxxd92CkaiXQpJ06Gv4a0m1YPI1/wM35ZxzjVZmlY tzD+PfBPxl/geVKHrSpvqlxqq6Sqfnj7DTtLbgviN4x92r4u1lV9vzoKfCsLawXqMzKv fKFA== X-Gm-Message-State: APt69E1PIxfUJTY82bvJe7YGD67NPKqNqc/53dmfS551OAgfjZf6PXxT RnPGGNxEj88d5xJYC5peRRE= X-Google-Smtp-Source: AAOMgpcTNjpp0+4s5BOv4EVorXI2TZD8of4V+DEUJwzyu+5/oTtg/LA3i+Zm+VSt/WAF0D7b9FPllA== X-Received: by 2002:a6b:84c6:: with SMTP id o67-v6mr41149196ioi.119.1531786446168; Mon, 16 Jul 2018 17:14:06 -0700 (PDT) Received: from zebian (cbl-45-2-119-34.yyz.frontiernetworks.ca. [45.2.119.34]) by smtp.googlemail.com with ESMTPSA id r23-v6sm16943752ior.17.2018.07.16.17.14.04 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 16 Jul 2018 17:14:05 -0700 (PDT) From: Noam Postavsky To: Jonathan Kyle Mitchell Subject: Re: bug#30724: eshell: escaped tilde is not treated as such References: <97031714eb3479b466bca0545b76114e4d40e898.camel@jonathanmitchell.org> <87zhz2dfed.fsf@gmail.com> <88c6e336a6a9a5362a1e878b2df9d7ffffc61f7a.camel@jonathanmitchell.org> Date: Mon, 16 Jul 2018 20:14:03 -0400 In-Reply-To: <88c6e336a6a9a5362a1e878b2df9d7ffffc61f7a.camel@jonathanmitchell.org> (Jonathan Kyle Mitchell's message of "Sun, 15 Jul 2018 12:18:26 -0500") Message-ID: <87sh4i90s4.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 30724 Cc: 30724@debbugs.gnu.org, Yegor Timoshenko X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Jonathan Kyle Mitchell writes: > After tracing through the execution of eshell some more, I noticed that > eshell sets an escaped text property on the arguments when the user > escaped them with `\' or quote characters but there is nothing in > eshell that does anything with it apparently. Yeah, this sort of half-finished thing seems to pop up in eshell quite a bit. > Subject: [PATCH] Check for special filenames in eshell (Bug#30724) > > * lisp/eshell/em-dirs.el (eshell/cd): Add > eshell-escape-special-filenames to symbol plist. > (eshell/pushd): Likewise. > (eshell/popd): Likewise. > > * lisp/eshell/em-ls.el (eshell/ls): Add > eshell-escape-special-filenames to symbol plist. > > * lisp/eshell/em-unix.el (eshell/rm): Add > eshell-escape-special-filenames to symbol plist. > (eshell/mkdir): Likewise. > (eshell/rmdir): Likewise. > (eshell/mv): Likewise. > (eshell/cp): Likewise. > (eshell/ln): Likewise. > (eshell/cat): Likewise. > (eshell/du): Likewise. > (eshell/diff): Likewise. > > * lisp/eshell/esh-cmd.el (eshell-lisp-command): Check for > single character escaped string arguments (Bug#30724). > > * lisp/eshell/esh-ext.el (eshell/addpath): Add > eshell-escape-special-filenames to symbol plist. The "Add eshell-escape-special-filenames to symbol plist" should be coalesced, as in: * lisp/eshell/em-dirs.el (eshell/cd, eshell/pushd, eshell/popd): * lisp/eshell/em-ls.el (eshell/ls): * lisp/eshell/em-unix.el (eshell/rm, eshell/mkdir, eshell/rmdir) (eshell/mv, eshell/cp, eshell/ln, eshell/cat, eshell/du, eshell/diff): * lisp/eshell/esh-ext.el (eshell/addpath): Add eshell-escape-special-filenames to symbol plist. * lisp/eshell/esh-cmd.el (eshell-lisp-command): Check for single character escaped string arguments (Bug#30724). > + (let ((numeric (not (get object > + 'eshell-no-numeric-conversions))) > + (escaped (get object 'eshell-escape-special-filenames))) I'm not sure 'escaped' or 'eshell-escape-special-filenames' are really the right names here, as they're not actually indicating any escaping. Maybe the property should be something like 'eshell-filename-arguments'? > + (when (or numeric escaped) > + (while args > + (let ((arg (car args))) > + (cond ((and numeric (stringp arg) (> (length arg) 0) > + (text-property-any 0 (length arg) > + 'number t arg)) > + ;; if any of the arguments are flagged as > + ;; numbers waiting for conversion, convert > + ;; them now Comments should be capitalized and end with a period (I know the original didn't, but since we're updating the code, now is a good time to fix it). > + (setcar args (string-to-number arg))) > + ((and escaped (stringp arg) (= (length arg) 1) > + (text-property-any 0 (length arg) > + 'escaped t arg)) > + ;; if any of the arguments are single > + ;; character escaped filenames, > + ;; prepend "./" > + (setcar args (concat "./" arg))))) It looks like this kind of escaping isn't actually needed for "*" which your previous patch mentioned. Perhaps just check for "~" explicitly, rather than any single character filenames. Or are there other examples besides "~" which need "./" to prevent interpretation? From debbugs-submit-bounces@debbugs.gnu.org Tue Jul 17 23:54:38 2018 Received: (at 30724) by debbugs.gnu.org; 18 Jul 2018 03:54:38 +0000 Received: from localhost ([127.0.0.1]:46059 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ffdXy-0005aK-8S for submit@debbugs.gnu.org; Tue, 17 Jul 2018 23:54:38 -0400 Received: from mail-oi0-f51.google.com ([209.85.218.51]:40742) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ffdXw-0005a7-GD for 30724@debbugs.gnu.org; Tue, 17 Jul 2018 23:54:37 -0400 Received: by mail-oi0-f51.google.com with SMTP id w126-v6so6153270oie.7 for <30724@debbugs.gnu.org>; Tue, 17 Jul 2018 20:54:36 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:message-id:subject:from:to:cc:date:in-reply-to :references:mime-version; bh=NaMraiPR5ljiinfV2tGMkq5i5DmkqmUs8B/tkeMN2i0=; b=mPEL4yc3ua0CJcNg4LXYVU+7PJBex07shwFAngtIZ8EvKqggjUasB34yhyqMP+tYCT TYJkRpEPTeeKeUKjuO6vsezLjAXfQX61VhCgA11XN+k2QG/8163OQhYl6pwdE96MWp+n 3VPckbgB5GlHK6gD1CxN4x62ztHBOeDrIIBGUTGjFS9ayDTXYXI+Dlfj6Afi9QadZsxs QSZaj0sKM8kapYO4Ns60AtLtkLSr0Z/vCnqTJGiFlUFjbvrLCpHjkaD75i9jdgpWgJ40 zCQI6XH3zUmNqZHsv6iLo98i7kQZWfhP37Lq7xLfsnF7f2p3P/2KK17+lSTbc+ITUCnR kNFg== X-Gm-Message-State: AOUpUlHwJUMB2AKnwwewIhtDg0JWLsYC2rGpW3oeooOuFr7R6x4DbQ4J IHv4m1KX2IFUlFqrXLoNq10= X-Google-Smtp-Source: AAOMgpdiwYl0sPxRFjZ+seY+v81Cuy2euoj1LBNIAKR5sfmsZdmnEM8g00Ee21MHVrs8uFOZ4lMt8Q== X-Received: by 2002:aca:6206:: with SMTP id w6-v6mr4357675oib.201.1531886070432; Tue, 17 Jul 2018 20:54:30 -0700 (PDT) Received: from fedora-laptop ([2601:2c3:8880:3cc9::c6c8]) by smtp.gmail.com with ESMTPSA id o125-v6sm5165129oig.44.2018.07.17.20.54.28 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 17 Jul 2018 20:54:29 -0700 (PDT) Message-ID: <181e363e715b67cf22d7d73cb1664b17651c6ddf.camel@jonathanmitchell.org> Subject: Re: bug#30724: eshell: escaped tilde is not treated as such From: Jonathan Kyle Mitchell To: Noam Postavsky Date: Tue, 17 Jul 2018 22:54:27 -0500 In-Reply-To: <87sh4i90s4.fsf@gmail.com> References: <97031714eb3479b466bca0545b76114e4d40e898.camel@jonathanmitchell.org> <87zhz2dfed.fsf@gmail.com> <88c6e336a6a9a5362a1e878b2df9d7ffffc61f7a.camel@jonathanmitchell.org> <87sh4i90s4.fsf@gmail.com> Content-Type: multipart/mixed; boundary="=-kff0I9+DLOKsUzm/OIof" X-Mailer: Evolution 3.28.3 (3.28.3-1.fc28) Mime-Version: 1.0 X-Spam-Score: 0.5 (/) X-Debbugs-Envelope-To: 30724 Cc: 30724@debbugs.gnu.org, Yegor Timoshenko X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.5 (/) --=-kff0I9+DLOKsUzm/OIof Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit On Mon, 2018-07-16 at 20:14 -0400, Noam Postavsky wrote: > The "Add eshell-escape-special-filenames to symbol plist" should be > coalesced, as in: Done in the new attached patch. > I'm not sure 'escaped' or 'eshell-escape-special-filenames' are > really > the right names here, as they're not actually indicating any > escaping. > Maybe the property should be something like 'eshell-filename- > arguments'? I changed the property name to eshell-filename-arguments. > Comments should be capitalized and end with a period (I know the > original didn't, but since we're updating the code, now is a good > time > to fix it). Fixed both the original and new comment. > It looks like this kind of escaping isn't actually needed for "*" > which > your previous patch mentioned. Perhaps just check for "~" > explicitly, > rather than any single character filenames. Or are there other > examples > besides "~" which need "./" to prevent interpretation? I can't think of any other cases that would need to be check either, so I changed to to just string-match "~" only. -- Jonathan Kyle Mitchell --=-kff0I9+DLOKsUzm/OIof Content-Disposition: attachment; filename="0001-Check-for-special-filenames-in-eshell-Bug-30724.patch" Content-Transfer-Encoding: base64 Content-Type: text/x-patch; name="0001-Check-for-special-filenames-in-eshell-Bug-30724.patch"; charset="UTF-8" RnJvbSAyYjg2YmZmMmMzZDYyOTM2ZmI1M2E1Y2IzNTQwZjg2ZmNkOTIwYTg0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKb25hdGhhbiBLeWxlIE1pdGNoZWxsIDxreWxlQGpvbmF0aGFu bWl0Y2hlbGwub3JnPgpEYXRlOiBNb24sIDE2IEp1bCAyMDE4IDIxOjQ2OjIwIC0wNTAwClN1Ympl Y3Q6IFtQQVRDSF0gQ2hlY2sgZm9yIHNwZWNpYWwgZmlsZW5hbWVzIGluIGVzaGVsbCAoQnVnIzMw NzI0KQoKCSogbGlzcC9lc2hlbGwvZXNoLWNtZC5lbCAoZXNoZWxsLWxpc3AtY29tbWFuZCk6IENo ZWNrIGZvciAifiIKCWluIGxpc3AgY29tbWFuZHMgd2l0aCB0aGUgZXNoZWxsLWZpbGVuYW1lLWFy Z3VtZW50cyBwcm9wZXJ0eQoJKEJ1ZyMzMDcyNCkuCgoJKiBsaXNwL2VzaGVsbC9lbS1kaXJzLmVs IChlc2hlbGwvY2QsIGVzaGVsbC9wdXNoZCwgZXNoZWxsL3BvcGQpOgoJKiBsaXNwL2VzaGVsbC9l bS1scy5lbCAoZXNoZWxsL2xzKToKCSogbGlzcC9lc2hlbGwvZW0tdW5peC5lbCAoZXNoZWxsL3Jt LCBlc2hlbGwvbWtkaXIsIGVzaGVsbC9ybWRpcik6CgkoZXNoZWxsL212LCBlc2hlbGwvY3AsIGVz aGVsbC9sbiwgZXNoZWxsL2NhdCwgZXNoZWxsL2R1LCBlc2hlbGwvZGlmZik6CgkqIGxpc3AvZXNo ZWxsL2VzaC1leHQuZWwgKGVzaGVsbC9hZGRwYXRoKTogQWRkCgllc2hlbGwtZmlsZW5hbWUtYXJn dW1lbnRzIHRvIHN5bWJvbCBwbGlzdC4KLS0tCiBsaXNwL2VzaGVsbC9lbS1kaXJzLmVsIHwgIDMg KysrCiBsaXNwL2VzaGVsbC9lbS1scy5lbCAgIHwgIDEgKwogbGlzcC9lc2hlbGwvZW0tdW5peC5l bCB8IDEwICsrKysrKysKIGxpc3AvZXNoZWxsL2VzaC1jbWQuZWwgfCA1OSArKysrKysrKysrKysr KysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0KIGxpc3AvZXNoZWxsL2VzaC1leHQuZWwgfCAg MSArCiA1IGZpbGVzIGNoYW5nZWQsIDQ5IGluc2VydGlvbnMoKyksIDI1IGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL2xpc3AvZXNoZWxsL2VtLWRpcnMuZWwgYi9saXNwL2VzaGVsbC9lbS1kaXJz LmVsCmluZGV4IGVjMzgwZTY3MDEuLjUxODBhMDcwMGQgMTAwNjQ0Ci0tLSBhL2xpc3AvZXNoZWxs L2VtLWRpcnMuZWwKKysrIGIvbGlzcC9lc2hlbGwvZW0tZGlycy5lbApAQCAtNDA3LDYgKzQwNyw3 IEBAIGVzaGVsbC9jZAogCW5pbCkpKSkKIAogKHB1dCAnZXNoZWxsL2NkICdlc2hlbGwtbm8tbnVt ZXJpYy1jb252ZXJzaW9ucyB0KQorKHB1dCAnZXNoZWxsL2NkICdlc2hlbGwtZmlsZW5hbWUtYXJn dW1lbnRzIHQpCiAKIChkZWZ1biBlc2hlbGwtYWRkLXRvLWRpci1yaW5nIChwYXRoKQogICAiQWRk IFBBVEggdG8gdGhlIGxhc3QtZGlyLXJpbmcsIGlmIGFwcGxpY2FibGUuIgpAQCAtNDcwLDYgKzQ3 MSw3IEBAIGVzaGVsbC9wdXNoZAogICBuaWwpCiAKIChwdXQgJ2VzaGVsbC9wdXNoZCAnZXNoZWxs LW5vLW51bWVyaWMtY29udmVyc2lvbnMgdCkKKyhwdXQgJ2VzaGVsbC9wdXNoZCAnZXNoZWxsLWZp bGVuYW1lLWFyZ3VtZW50cyB0KQogCiA7OzsgcG9wZCBbK25dCiAoZGVmdW4gZXNoZWxsL3BvcGQg KCZyZXN0IGFyZ3MpCkBAIC01MDAsNiArNTAyLDcgQEAgZXNoZWxsL3BvcGQKICAgbmlsKQogCiAo cHV0ICdlc2hlbGwvcG9wZCAnZXNoZWxsLW5vLW51bWVyaWMtY29udmVyc2lvbnMgdCkKKyhwdXQg J2VzaGVsbC9wb3AgJ2VzaGVsbC1maWxlbmFtZS1hcmd1bWVudHMgdCkKIAogKGRlZnVuIGVzaGVs bC9kaXJzICgmb3B0aW9uYWwgaWYtdmVyYm9zZSkKICAgIkltcGxlbWVudGF0aW9uIG9mIGRpcnMg aW4gTGlzcC4iCmRpZmYgLS1naXQgYS9saXNwL2VzaGVsbC9lbS1scy5lbCBiL2xpc3AvZXNoZWxs L2VtLWxzLmVsCmluZGV4IDkwMGIyODkwNWIuLjJiNTY4YTk5MWEgMTAwNjQ0Ci0tLSBhL2xpc3Av ZXNoZWxsL2VtLWxzLmVsCisrKyBiL2xpc3AvZXNoZWxsL2VtLWxzLmVsCkBAIC0zMzQsNiArMzM0 LDcgQEAgZXNoZWxsL2xzCiAgICAgKGFwcGx5ICdlc2hlbGwtZG8tbHMgYXJncykpKQogCiAocHV0 ICdlc2hlbGwvbHMgJ2VzaGVsbC1uby1udW1lcmljLWNvbnZlcnNpb25zIHQpCisocHV0ICdlc2hl bGwvbHMgJ2VzaGVsbC1maWxlbmFtZS1hcmd1bWVudHMgdCkKIAogKGRlY2xhcmUtZnVuY3Rpb24g ZXNoZWxsLWdsb2ItcmVnZXhwICJlbS1nbG9iIiAocGF0dGVybikpCiAKZGlmZiAtLWdpdCBhL2xp c3AvZXNoZWxsL2VtLXVuaXguZWwgYi9saXNwL2VzaGVsbC9lbS11bml4LmVsCmluZGV4IGExOGZi ODU1MDcuLmM5MTJjMTVhYzcgMTAwNjQ0Ci0tLSBhL2xpc3AvZXNoZWxsL2VtLXVuaXguZWwKKysr IGIvbGlzcC9lc2hlbGwvZW0tdW5peC5lbApAQCAtMzA3LDYgKzMwNyw3IEBAIGVzaGVsbC9ybQog ICAgbmlsKSkKIAogKHB1dCAnZXNoZWxsL3JtICdlc2hlbGwtbm8tbnVtZXJpYy1jb252ZXJzaW9u cyB0KQorKHB1dCAnZXNoZWxsL3JtICdlc2hlbGwtZmlsZW5hbWUtYXJndW1lbnRzIHQpCiAKIChk ZWZ1biBlc2hlbGwvbWtkaXIgKCZyZXN0IGFyZ3MpCiAgICJJbXBsZW1lbnRhdGlvbiBvZiBta2Rp ciBpbiBMaXNwLiIKQEAgLTMyNCw2ICszMjUsNyBAQCBlc2hlbGwvbWtkaXIKICAgIG5pbCkpCiAK IChwdXQgJ2VzaGVsbC9ta2RpciAnZXNoZWxsLW5vLW51bWVyaWMtY29udmVyc2lvbnMgdCkKKyhw dXQgJ2VzaGVsbC9ta2RpciAnZXNoZWxsLWZpbGVuYW1lLWFyZ3VtZW50cyB0KQogCiAoZGVmdW4g ZXNoZWxsL3JtZGlyICgmcmVzdCBhcmdzKQogICAiSW1wbGVtZW50YXRpb24gb2Ygcm1kaXIgaW4g TGlzcC4iCkBAIC0zNDAsNiArMzQyLDcgQEAgZXNoZWxsL3JtZGlyCiAgICBuaWwpKQogCiAocHV0 ICdlc2hlbGwvcm1kaXIgJ2VzaGVsbC1uby1udW1lcmljLWNvbnZlcnNpb25zIHQpCisocHV0ICdl c2hlbGwvcm1kaXIgJ2VzaGVsbC1maWxlbmFtZS1hcmd1bWVudHMgdCkKIAogKGRlZnZhciBuby1k ZXJlZmVyZW5jZSkKIApAQCAtNTI0LDYgKzUyNyw3IEBAIGVzaGVsbC9tdgogCQkJICAgICBlc2hl bGwtbXYtb3ZlcndyaXRlLWZpbGVzKSkpKQogCiAocHV0ICdlc2hlbGwvbXYgJ2VzaGVsbC1uby1u dW1lcmljLWNvbnZlcnNpb25zIHQpCisocHV0ICdlc2hlbGwvbXYgJ2VzaGVsbC1maWxlbmFtZS1h cmd1bWVudHMgdCkKIAogKGRlZnVuIGVzaGVsbC9jcCAoJnJlc3QgYXJncykKICAgIkltcGxlbWVu dGF0aW9uIG9mIGNwIGluIExpc3AuIgpAQCAtNTYxLDYgKzU2NSw3IEBAIGVzaGVsbC9jcAogCQkJ ICAgZXNoZWxsLWNwLW92ZXJ3cml0ZS1maWxlcyBwcmVzZXJ2ZSkpKQogCiAocHV0ICdlc2hlbGwv Y3AgJ2VzaGVsbC1uby1udW1lcmljLWNvbnZlcnNpb25zIHQpCisocHV0ICdlc2hlbGwvY3AgJ2Vz aGVsbC1maWxlbmFtZS1hcmd1bWVudHMgdCkKIAogKGRlZnVuIGVzaGVsbC9sbiAoJnJlc3QgYXJn cykKICAgIkltcGxlbWVudGF0aW9uIG9mIGxuIGluIExpc3AuIgpAQCAtNTkzLDYgKzU5OCw3IEBA IGVzaGVsbC9sbgogCQkJICAgICBlc2hlbGwtbG4tb3ZlcndyaXRlLWZpbGVzKSkpKQogCiAocHV0 ICdlc2hlbGwvbG4gJ2VzaGVsbC1uby1udW1lcmljLWNvbnZlcnNpb25zIHQpCisocHV0ICdlc2hl bGwvbG4gJ2VzaGVsbC1maWxlbmFtZS1hcmd1bWVudHMgdCkKIAogKGRlZnVuIGVzaGVsbC9jYXQg KCZyZXN0IGFyZ3MpCiAgICJJbXBsZW1lbnRhdGlvbiBvZiBjYXQgaW4gTGlzcC4KQEAgLTY0NSw2 ICs2NTEsNyBAQCBlc2hlbGwvY2F0CiAgICAgIChzZXRxIGVzaGVsbC1lbnN1cmUtbmV3bGluZS1w IG5pbCkpKSkKIAogKHB1dCAnZXNoZWxsL2NhdCAnZXNoZWxsLW5vLW51bWVyaWMtY29udmVyc2lv bnMgdCkKKyhwdXQgJ2VzaGVsbC9jYXQgJ2VzaGVsbC1maWxlbmFtZS1hcmd1bWVudHMgdCkKIAog Ozsgc3BlY2lhbCBmcm9udC1lbmQgZnVuY3Rpb25zIGZvciBjb21waWxhdGlvbi1tb2RlIGJ1ZmZl cnMKIApAQCAtOTI3LDYgKzkzNCw4IEBAIGVzaGVsbC9kdQogCSAgICAgKGVzaGVsbC1wcmludCAo Y29uY2F0IChlc2hlbGwtZHUtc2l6ZS1zdHJpbmcgc2l6ZSkKIAkJCQkgICAidG90YWxcbiIpKSkp KSkpKQogCisocHV0ICdlc2hlbGwvZHUgJ2VzaGVsbC1maWxlbmFtZS1hcmd1bWVudHMgdCkKKwog KGRlZnZhciBlc2hlbGwtdGltZS1zdGFydCBuaWwpCiAKIChkZWZ1biBlc2hlbGwtc2hvdy1lbGFw c2VkLXRpbWUgKCkKQEAgLTEwMjksNiArMTAzOCw3IEBAIGVzaGVsbC9kaWZmCiAgIG5pbCkKIAog KHB1dCAnZXNoZWxsL2RpZmYgJ2VzaGVsbC1uby1udW1lcmljLWNvbnZlcnNpb25zIHQpCisocHV0 ICdlc2hlbGwvZGlmZiAnZXNoZWxsLWZpbGVuYW1lLWFyZ3VtZW50cyB0KQogCiAoZGVmdmFyIGxv Y2F0ZS1oaXN0b3J5LWxpc3QpCiAKZGlmZiAtLWdpdCBhL2xpc3AvZXNoZWxsL2VzaC1jbWQuZWwg Yi9saXNwL2VzaGVsbC9lc2gtY21kLmVsCmluZGV4IDYxYzBlYmM3MWQuLjM1OGYwZjk1N2UgMTAw NjQ0Ci0tLSBhL2xpc3AvZXNoZWxsL2VzaC1jbWQuZWwKKysrIGIvbGlzcC9lc2hlbGwvZXNoLWNt ZC5lbApAQCAtMTMwNCwzMiArMTMwNCw0MSBAQCBlc2hlbGwtbGlzcC1jb21tYW5kCiAgICJJbnNl cnQgTGlzcCBPQkpFQ1QsIHVzaW5nIEFSR1MgaWYgYSBmdW5jdGlvbi4iCiAgIChjYXRjaCAnZXNo ZWxsLWV4dGVybmFsICAgICAgICAgICAgICAgOyBkZWZlcnJlZCB0byBhbiBleHRlcm5hbCBjb21t YW5kCiAgICAgKGxldCogKChlc2hlbGwtZW5zdXJlLW5ld2xpbmUtcCAoZXNoZWxsLWludGVyYWN0 aXZlLW91dHB1dC1wKSkKLQkgICAocmVzdWx0Ci0JICAgIChpZiAoZnVuY3Rpb25wIG9iamVjdCkK LQkJKHByb2duCi0JCSAgKHNldHEgZXNoZWxsLWxhc3QtYXJndW1lbnRzIGFyZ3MKLQkJCWVzaGVs bC1sYXN0LWNvbW1hbmQtbmFtZQotCQkJKGNvbmNhdCAiIzxmdW5jdGlvbiAiIChzeW1ib2wtbmFt ZSBvYmplY3QpICI+IikpCi0JCSAgOzsgaWYgYW55IG9mIHRoZSBhcmd1bWVudHMgYXJlIGZsYWdn ZWQgYXMgbnVtYmVycwotCQkgIDs7IHdhaXRpbmcgZm9yIGNvbnZlcnNpb24sIGNvbnZlcnQgdGhl bSBub3cKLQkJICAodW5sZXNzIChnZXQgb2JqZWN0ICdlc2hlbGwtbm8tbnVtZXJpYy1jb252ZXJz aW9ucykKLQkJICAgICh3aGlsZSBhcmdzCi0JCSAgICAgIChsZXQgKChhcmcgKGNhciBhcmdzKSkp Ci0JCQkoaWYgKGFuZCAoc3RyaW5ncCBhcmcpCi0JCQkJICg+IChsZW5ndGggYXJnKSAwKQotCQkJ CSAobm90ICh0ZXh0LXByb3BlcnR5LW5vdC1hbGwKLQkJCQkgICAgICAgMCAobGVuZ3RoIGFyZykg J251bWJlciB0IGFyZykpKQotCQkJICAgIChzZXRjYXIgYXJncyAoc3RyaW5nLXRvLW51bWJlciBh cmcpKSkpCi0JCSAgICAgIChzZXRxIGFyZ3MgKGNkciBhcmdzKSkpKQotCQkgIChlc2hlbGwtYXBw bHkgb2JqZWN0IGVzaGVsbC1sYXN0LWFyZ3VtZW50cykpCi0JICAgICAgKHNldHEgZXNoZWxsLWxh c3QtYXJndW1lbnRzIGFyZ3MKLQkJICAgIGVzaGVsbC1sYXN0LWNvbW1hbmQtbmFtZSAiIzxMaXNw IG9iamVjdD4iKQotCSAgICAgIChlc2hlbGwtZXZhbCBvYmplY3QpKSkpCisgICAgICAgICAgIChy ZXN1bHQKKyAgICAgICAgICAgIChpZiAoZnVuY3Rpb25wIG9iamVjdCkKKyAgICAgICAgICAgICAg ICAocHJvZ24KKyAgICAgICAgICAgICAgICAgIChzZXRxIGVzaGVsbC1sYXN0LWFyZ3VtZW50cyBh cmdzCisgICAgICAgICAgICAgICAgICAgICAgICBlc2hlbGwtbGFzdC1jb21tYW5kLW5hbWUKKyAg ICAgICAgICAgICAgICAgICAgICAgIChjb25jYXQgIiM8ZnVuY3Rpb24gIiAoc3ltYm9sLW5hbWUg b2JqZWN0KSAiPiIpKQorICAgICAgICAgICAgICAgICAgKGxldCAoKG51bWVyaWMgKG5vdCAoZ2V0 IG9iamVjdAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdlc2hl bGwtbm8tbnVtZXJpYy1jb252ZXJzaW9ucykpKQorICAgICAgICAgICAgICAgICAgICAgICAgKGZu YW1lLWFyZ3MgKGdldCBvYmplY3QgJ2VzaGVsbC1maWxlbmFtZS1hcmd1bWVudHMpKSkKKyAgICAg ICAgICAgICAgICAgICAgKHdoZW4gKG9yIG51bWVyaWMgZm5hbWUtYXJncykKKyAgICAgICAgICAg ICAgICAgICAgICAod2hpbGUgYXJncworICAgICAgICAgICAgICAgICAgICAgICAgKGxldCAoKGFy ZyAoY2FyIGFyZ3MpKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKGNvbmQgKChhbmQgbnVt ZXJpYyAoc3RyaW5ncCBhcmcpICg+IChsZW5ndGggYXJnKSAwKQorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAodGV4dC1wcm9wZXJ0eS1hbnkgMCAobGVuZ3RoIGFyZykKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdu dW1iZXIgdCBhcmcpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOzsgSWYgYW55 IG9mIHRoZSBhcmd1bWVudHMgYXJlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7 OyBmbGFnZ2VkIGFzIG51bWJlcnMgd2FpdGluZyBmb3IKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIDs7IGNvbnZlcnNpb24sIGNvbnZlcnQgdGhlbSBub3cuCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAoc2V0Y2FyIGFyZ3MgKHN0cmluZy10by1udW1iZXIgYXJnKSkp CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoYW5kIGZuYW1lLWFyZ3MgKHN0cmlu Z3AgYXJnKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc3RyaW5nLWVx dWFsIGFyZyAifiIpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOzsgSWYgYW55 IG9mIHRoZSBhcmd1bWVudHMgbWF0Y2ggIn4iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgOzsgcHJlcGVuZCAiLi8iIHRvIHRyZWF0IGl0IGFzIGEKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIDs7IHJlZ3VsYXIgZmlsZSBuYW1lLgorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgKHNldGNhciBhcmdzIChjb25jYXQgIi4vIiBhcmcpKSkpKQorICAgICAg ICAgICAgICAgICAgICAgICAgKHNldHEgYXJncyAoY2RyIGFyZ3MpKSkpKQorICAgICAgICAgICAg ICAgICAgKGVzaGVsbC1hcHBseSBvYmplY3QgZXNoZWxsLWxhc3QtYXJndW1lbnRzKSkKKyAgICAg ICAgICAgICAgKHNldHEgZXNoZWxsLWxhc3QtYXJndW1lbnRzIGFyZ3MKKyAgICAgICAgICAgICAg ICAgICAgZXNoZWxsLWxhc3QtY29tbWFuZC1uYW1lICIjPExpc3Agb2JqZWN0PiIpCisgICAgICAg ICAgICAgIChlc2hlbGwtZXZhbCBvYmplY3QpKSkpCiAgICAgICAoaWYgKGFuZCBlc2hlbGwtZW5z dXJlLW5ld2xpbmUtcAotCSAgICAgICAoc2F2ZS1leGN1cnNpb24KLQkJIChnb3RvLWNoYXIgZXNo ZWxsLWxhc3Qtb3V0cHV0LWVuZCkKLQkJIChub3QgKGJvbHApKSkpCi0JICAoZXNoZWxsLXByaW50 ICJcbiIpKQorICAgICAgICAgICAgICAgKHNhdmUtZXhjdXJzaW9uCisgICAgICAgICAgICAgICAg IChnb3RvLWNoYXIgZXNoZWxsLWxhc3Qtb3V0cHV0LWVuZCkKKyAgICAgICAgICAgICAgICAgKG5v dCAoYm9scCkpKSkKKyAgICAgICAgICAoZXNoZWxsLXByaW50ICJcbiIpKQogICAgICAgKGVzaGVs bC1jbG9zZS1oYW5kbGVzIDAgKGxpc3QgJ3F1b3RlIHJlc3VsdCkpKSkpCiAKIChkZWZhbGlhcyAn ZXNoZWxsLWxpc3AtY29tbWFuZCogJ2VzaGVsbC1saXNwLWNvbW1hbmQpCmRpZmYgLS1naXQgYS9s aXNwL2VzaGVsbC9lc2gtZXh0LmVsIGIvbGlzcC9lc2hlbGwvZXNoLWV4dC5lbAppbmRleCBiYTUx ODJkZWI0Li4yNDRjYzdmZjFmIDEwMDY0NAotLS0gYS9saXNwL2VzaGVsbC9lc2gtZXh0LmVsCisr KyBiL2xpc3AvZXNoZWxsL2VzaC1leHQuZWwKQEAgLTI1OSw2ICsyNTksNyBAQCBlc2hlbGwvYWRk cGF0aAogICAgICAgIChlc2hlbGwtcHJpbnRuIGRpcikpKSkpCiAKIChwdXQgJ2VzaGVsbC9hZGRw YXRoICdlc2hlbGwtbm8tbnVtZXJpYy1jb252ZXJzaW9ucyB0KQorKHB1dCAnZXNoZWxsL2FkZHBh dGggJ2VzaGVsbC1maWxlbmFtZS1hcmd1bWVudHMgdCkKIAogKGRlZnVuIGVzaGVsbC1zY3JpcHQt aW50ZXJwcmV0ZXIgKGZpbGUpCiAgICJFeHRyYWN0IHRoZSBzY3JpcHQgdG8gcnVuIGZyb20gRklM RSwgaWYgaXQgaGFzICMhPGludGVycD4gaW4gaXQuCi0tIAoyLjE3LjEKCg== --=-kff0I9+DLOKsUzm/OIof-- From debbugs-submit-bounces@debbugs.gnu.org Sat Jul 21 21:34:57 2018 Received: (at 30724) by debbugs.gnu.org; 22 Jul 2018 01:34:57 +0000 Received: from localhost ([127.0.0.1]:51492 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fh3Gy-0001Dd-QU for submit@debbugs.gnu.org; Sat, 21 Jul 2018 21:34:56 -0400 Received: from mail-it0-f42.google.com ([209.85.214.42]:54189) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fh3Gw-0001DL-Ju; Sat, 21 Jul 2018 21:34:54 -0400 Received: by mail-it0-f42.google.com with SMTP id 72-v6so19537453itw.3; Sat, 21 Jul 2018 18:34:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=FMYWMf06ez8gfpd7qpVx7Xt8+6OR58mcMVhPjMQTxwk=; b=hf9BBUTqMT54bh6mKvpydZ4yL6C4KFFIZxM1wprf0BhHX2MY8Ei21odzPfnJnj0rzu adqM6dRxTEPx1I7wyWDnIiSIOoZVUMWVd10wA1R8G8FMgm6VaRRDScDxhV+z8jBVQ4hC iIrD+gZ0VpL8tNFq+05zyugtoGzXH/3VW1aNEsPOjKakptqKoxgrsGtT4N+kJEJ93Bin s0VpevzHh3vtDbHMVS9C7jK1mMEWHiRZ0TKeeaEpXUJ8oP8XN7hMmbvBHpgMkiXsCTDd l2u3aLie3+10RWe7go1i7AXOjn5rCUnY4eATAUeRRePoSmHDykoYX8/zanZAF+DT+eLt CXng== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=FMYWMf06ez8gfpd7qpVx7Xt8+6OR58mcMVhPjMQTxwk=; b=ZifXi6UBSuyIUweBOhxlGPJ90Cb3E6mbHrQtZBHtHN2Nxu6O1f9zGaOMjKJPMZZnbh tNOuxeeFcwpTb948M1pe5F2x4sb/6ZTYWNWGCyC2uLahDdc+aJqiYaqjpYSb9eKbcT0/ i4kVeSNKkqZA28qYi0JxI4RIQa/Z/IJib6kQP1gnndjZHkjb/AMM1KJ0VdsWyMRHFPd8 QeThD7GC/nB/wwdpIt2WuNuwjcgZuAmvwPb87lxG3psDH3YVd8FH1PIMD+nWxJcJzVm8 kIozcNgTs/GCNBDQ39SuDks4mgTOsh2RxizWM3GfS2D2zoqW7s/IveSwvT8haTmhSs9S 8nWw== X-Gm-Message-State: AOUpUlEDIAl3Qhv1vsz44HQ5EbLgIXP7aELXTd26ExD2xfden9sDJqhn 0M4nQ0WygNqD7lIU57QQ3Xmd7fpA X-Google-Smtp-Source: AAOMgpdrGGukYsSc7taQ2LBoW7/4Y8GoWeS+fHRHG3BPQqbsrPFOXggvx6ti7yRFMwcj1J9szyv3cA== X-Received: by 2002:a02:8895:: with SMTP id n21-v6mr6823237jaj.21.1532223289227; Sat, 21 Jul 2018 18:34:49 -0700 (PDT) Received: from zebian (cbl-45-2-119-34.yyz.frontiernetworks.ca. [45.2.119.34]) by smtp.googlemail.com with ESMTPSA id v137-v6sm3755618ita.2.2018.07.21.18.34.48 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Sat, 21 Jul 2018 18:34:48 -0700 (PDT) From: Noam Postavsky To: Jonathan Kyle Mitchell Subject: Re: bug#30724: eshell: escaped tilde is not treated as such References: <97031714eb3479b466bca0545b76114e4d40e898.camel@jonathanmitchell.org> <87zhz2dfed.fsf@gmail.com> <88c6e336a6a9a5362a1e878b2df9d7ffffc61f7a.camel@jonathanmitchell.org> <87sh4i90s4.fsf@gmail.com> <181e363e715b67cf22d7d73cb1664b17651c6ddf.camel@jonathanmitchell.org> Date: Sat, 21 Jul 2018 21:34:47 -0400 In-Reply-To: <181e363e715b67cf22d7d73cb1664b17651c6ddf.camel@jonathanmitchell.org> (Jonathan Kyle Mitchell's message of "Tue, 17 Jul 2018 22:54:27 -0500") Message-ID: <87in5859zc.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 30724 Cc: 30724@debbugs.gnu.org, Yegor Timoshenko X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) tags 30724 fixed close 30724 26.2 quit Jonathan Kyle Mitchell writes: > Done in the new attached patch. Pushed to emacs-26. [1: 5de444112c]: 2018-07-21 21:07:07 -0400 Check for special filenames in eshell (Bug#30724) https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=5de444112cf19c078d4a74752a50e890233ef033> > * lisp/eshell/em-unix.el (eshell/rm, eshell/mkdir, eshell/rmdir): A minor nitpick about formatting here, ChangeLog entries for one file continued over multiple lines shouldn't have a colon at the end of line (I fixed this before pushing). > (eshell/mv, eshell/cp, eshell/ln, eshell/cat, eshell/du, eshell/diff): From unknown Sun Jun 22 17:11:09 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Sun, 19 Aug 2018 11:24:05 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator