From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Daniel Colascione Newsgroups: gmane.emacs.devel Subject: Fixing Windows and DOS command line argument quoting Date: Sun, 24 Apr 2011 19:09:31 -0700 Message-ID: <4DB4D7DB.50101@gmail.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="------------enig24D98331764DC4F617396B30" X-Trace: dough.gmane.org 1303697385 2135 80.91.229.12 (25 Apr 2011 02:09:45 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Mon, 25 Apr 2011 02:09:45 +0000 (UTC) To: Emacs development discussions Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Apr 25 04:09:42 2011 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1QEBF7-0001PN-Kc for ged-emacs-devel@m.gmane.org; Mon, 25 Apr 2011 04:09:41 +0200 Original-Received: from localhost ([::1]:55998 helo=lists2.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QEBF6-0007RG-Ek for ged-emacs-devel@m.gmane.org; Sun, 24 Apr 2011 22:09:40 -0400 Original-Received: from eggs.gnu.org ([140.186.70.92]:53624) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QEBF3-0007R9-VB for emacs-devel@gnu.org; Sun, 24 Apr 2011 22:09:38 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QEBF2-0000xW-OL for emacs-devel@gnu.org; Sun, 24 Apr 2011 22:09:37 -0400 Original-Received: from mail-pz0-f41.google.com ([209.85.210.41]:54813) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QEBF2-0000xO-9s for emacs-devel@gnu.org; Sun, 24 Apr 2011 22:09:36 -0400 Original-Received: by pzk32 with SMTP id 32so1650789pzk.0 for ; Sun, 24 Apr 2011 19:09:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:message-id:date:from:user-agent:mime-version:to :subject:x-enigmail-version:content-type; bh=yxtYQ7EUEpt/hy6DgpFG4NDHf8VJFP++8Ig7W+188Mc=; b=Ko7QPRK6gjYFxL8jcFPemteBs4RtFSR5MxGnOIJE3WgidMGGIy0ePqa6ZCrxckrtqe 3SKso+5PV4ucbGWALzi9D2M9WWDbA5rtJdXH4rRqvxc6jBbf3uoDyhXsZUbJVKRSM7+o HFZ+WYjywktVWn8kazORafSryfvAS9ekCxzpI= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:subject :x-enigmail-version:content-type; b=EDWarmUXgwIxcdPc40OSV2DqH8C4LiqVQtWT8DyWfT4J9kQ/Ceqro6k3UQocC0Ig9B jjMjpZ81dVtAYJnkCizKDxLyos1ymEyOUWUUUEhVhvHz7wj+eraflrV8dJ7RuEwQRqw7 Q82vFLvUnBhGrF6/CfH7xlDThTf8zr7xUykGk= Original-Received: by 10.142.3.13 with SMTP id 13mr2117613wfc.337.1303697375504; Sun, 24 Apr 2011 19:09:35 -0700 (PDT) Original-Received: from edith.local (c-67-183-23-114.hsd1.wa.comcast.net [67.183.23.114]) by mx.google.com with ESMTPS id n7sm4338579wfl.11.2011.04.24.19.09.34 (version=TLSv1/SSLv3 cipher=OTHER); Sun, 24 Apr 2011 19:09:34 -0700 (PDT) User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.15) Gecko/20110303 Thunderbird/3.1.9 X-Enigmail-Version: 1.1.1 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-Received-From: 209.85.210.41 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:138698 Archived-At: This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enig24D98331764DC4F617396B30 Content-Type: multipart/mixed; boundary="------------090600080004000201020301" This is a multi-part message in MIME format. --------------090600080004000201020301 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable As I explain in [1], many Windows programs get command line argument quoting wrong. Emacs is one of these programs. The attached patch resolves the issue, and if there are no objections, I'll apply it to both the Emacs 23 branch and the trunk in the next few days. [1] http://blogs.msdn.com/b/twistylittlepassagesallalike/archive/2011/04/23/e= veryone-quotes-arguments-the-wrong-way.aspx --------------090600080004000201020301 Content-Type: text/plain; name="quote-fix.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="quote-fix.patch" PT09IG1vZGlmaWVkIGZpbGUgJ2xpc3Avc3Vici5lbCcKLS0tIGxpc3Avc3Vici5lbAkyMDEx LTA0LTE5IDEzOjQ0OjU1ICswMDAwCisrKyBsaXNwL3N1YnIuZWwJMjAxMS0wNC0yNSAwMjow NTowNyArMDAwMApAQCAtMjUwNywxOSArMjUwNywzMyBAQAogICAiUXVvdGUgQVJHVU1FTlQg Zm9yIHBhc3NpbmcgYXMgYXJndW1lbnQgdG8gYW4gaW5mZXJpb3Igc2hlbGwuIgogICAoaWYg KG9yIChlcSBzeXN0ZW0tdHlwZSAnbXMtZG9zKQogICAgICAgICAgIChhbmQgKGVxIHN5c3Rl bS10eXBlICd3aW5kb3dzLW50KSAodzMyLXNoZWxsLWRvcy1zZW1hbnRpY3MpKSkKLSAgICAg IDs7IFF1b3RlIHVzaW5nIGRvdWJsZSBxdW90ZXMsIGJ1dCBlc2NhcGUgYW55IGV4aXN0aW5n IHF1b3RlcyBpbgotICAgICAgOzsgdGhlIGFyZ3VtZW50IHdpdGggYmFja3NsYXNoZXMuCi0g ICAgICAobGV0ICgocmVzdWx0ICIiKQotCSAgICAoc3RhcnQgMCkKLQkgICAgZW5kKQotCShp ZiAob3IgKG51bGwgKHN0cmluZy1tYXRjaCAiW15cIl0iIGFyZ3VtZW50KSkKLQkJKDwgKG1h dGNoLWVuZCAwKSAobGVuZ3RoIGFyZ3VtZW50KSkpCi0JICAgICh3aGlsZSAoc3RyaW5nLW1h dGNoICJbXCJdIiBhcmd1bWVudCBzdGFydCkKLQkgICAgICAoc2V0cSBlbmQgKG1hdGNoLWJl Z2lubmluZyAwKQotCQkgICAgcmVzdWx0IChjb25jYXQgcmVzdWx0IChzdWJzdHJpbmcgYXJn dW1lbnQgc3RhcnQgZW5kKQotCQkJCSAgICJcXCIgKHN1YnN0cmluZyBhcmd1bWVudCBlbmQg KDErIGVuZCkpKQotCQkgICAgc3RhcnQgKDErIGVuZCkpKSkKLQkoY29uY2F0ICJcIiIgcmVz dWx0IChzdWJzdHJpbmcgYXJndW1lbnQgc3RhcnQpICJcIiIpKQorICAgICAgCisgICAgICA7 OyBGaXJzdCwgcXVvdGUgYXJndW1lbnQgc28gdGhhdCBDb21tYW5kTGluZVRvQXJndlcgd2ls bAorICAgICAgOzsgdW5kZXJzdGFuZCBpdC4gIEluc2lkZSBhbiBhcmd1bWVudCwgMm4gb3Ig Mm4gKyAxIGJhY2tzbGFzaGVzCisgICAgICA7OyBmb2xsb3dlZCBieSBhIGRvdWJsZSBxdW90 ZSBwcm9kdWNlcyBuIGJhY2tzbGFzaGVzLiAgSW4gdGhlCisgICAgICA7OyBmb3JtZXIgY2Fz ZSwgd2UgYWxzbyBlbmRzIHRoZSBhcmd1bWVudC4gIEluIHRoZSBsYXR0ZXIgY2FzZSwKKyAg ICAgIDs7IHdlIGFsc28gcHJvZHVjZSBhIGRvdWJsZS1xdW90ZSBjaGFyYWN0ZXIgYW5kIGVu ZCB0aGUKKyAgICAgIDs7IGFyZ3VtZW50LiAgQmFja3NsYXNoZXMgbm90IGZvbGxvd2VkIGJ5 IGEgcXVvdGF0aW9uIG1hcmsgYXJlCisgICAgICA7OyBsZWZ0IGFsb25lLiBTZWUKKyAgICAg IDs7IGh0dHA6Ly9tc2RuLm1pY3Jvc29mdC5jb20vZW4tdXMvbGlicmFyeS8xN3c1eWtmdCUy OHY9dnMuODUlMjkuYXNweAorICAgICAgOzsgQWZ0ZXIgd2UgcGVyZm9ybSB0aGF0IGxldmVs IG9mIHF1b3RpbmcsIHJlcGxhY2Ugc2hlbGwKKyAgICAgIDs7IG1ldGFjaGFyYWN0ZXJzIHNv IHRoYXQgY21kIHdvbid0IG1hbmdsZSBvdXIgYXJndW1lbnQuCisKKyAgICAgIChyZXBsYWNl LXJlZ2V4cC1pbi1zdHJpbmcKKyAgICAgICAiXFwoWygpXCI8PiZ8Xl1cXCkiCisgICAgICAg Il5cXDEiCisgICAgICAgKGNvbmNhdAorICAgICAgICAiXCIiCisgICAgICAgIDs7IGVzY2Fw ZSBiYWNrc2xhc2hlcyBhdCBlbmQgb2Ygc3RyaW5nCisgICAgICAgIChyZXBsYWNlLXJlZ2V4 cC1pbi1zdHJpbmcKKyAgICAgICAgICJcXChcXFxcKlxcKSQiCisgICAgICAgICAiXFwxXFwx IgorICAgICAgICAgOzsgZXNjYXBlIGJhY2tzbGFzaGVzIGFuZCBxdW90ZXMgaW4gc3RyaW5n IGJvZHkKKyAgICAgICAgIChyZXBsYWNlLXJlZ2V4cC1pbi1zdHJpbmcKKyAgICAgICAgICAi XFwoXFxcXCpcXClcIiIKKyAgICAgICAgICAiXFwxXFwxXFxcXFwiIgorICAgICAgICAgIGFy Z3VtZW50KSkKKyAgICAgICAgIlwiIikpCiAgICAgKGlmIChlcXVhbCBhcmd1bWVudCAiIikK ICAgICAgICAgIicnIgogICAgICAgOzsgUXVvdGUgZXZlcnl0aGluZyBleGNlcHQgUE9TSVgg ZmlsZW5hbWUgY2hhcmFjdGVycy4KCg== --------------090600080004000201020301-- --------------enig24D98331764DC4F617396B30 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (Darwin) iEYEARECAAYFAk20190ACgkQ17c2LVA10VsivwCeJkf8jmyjAHkfkrRTFPGCAW3I LC4AnA4PgR9lRB1qTjt0MrTD6uk0tBCw =rfDk -----END PGP SIGNATURE----- --------------enig24D98331764DC4F617396B30--