GNU bug report logs - #10523
24.0.92; Wrong init value for eshell-windows-shell-file

Previous Next

Package: emacs;

Reported by: Lars Ljung <lars <at> matholka.se>

Date: Mon, 16 Jan 2012 21:48:02 UTC

Severity: normal

Tags: patch

Found in version 24.0.92

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Lars Ljung <lars <at> matholka.se>
Subject: bug#10523: closed (Re: bug#10523: 24.0.92; Wrong init value for
 eshell-windows-shell-file)
Date: Sat, 04 Feb 2012 10:00:02 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#10523: 24.0.92; Wrong init value for eshell-windows-shell-file

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 10523 <at> debbugs.gnu.org.

-- 
10523: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10523
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Eli Zaretskii <eliz <at> gnu.org>
To: Lars Ljung <lars <at> matholka.se>
Cc: 10523-done <at> debbugs.gnu.org
Subject: Re: bug#10523: 24.0.92; Wrong init value for eshell-windows-shell-file
Date: Sat, 04 Feb 2012 11:58:43 +0200
> Date: Tue, 17 Jan 2012 06:53:38 +0100
> From: Lars Ljung <lars <at> matholka.se>
> CC: 10523 <at> debbugs.gnu.org
> 
> 2012-01-17 06:11, Eli Zaretskii skrev:
> > Why doesn't it work properly?  Can you give a simple test case where
> > it fails, and explain why?
> 
> With cmdproxy.exe it will look like this:
> 
> ~ $ test.bat arg1 arg2
> warning: extra args ignored after 'test.bat'
> 
> The warning is printed by cmdproxy.exe and the reason is that the
> command gets translated to the following:
> 
> cmdproxy.exe /c test.bat arg1 arg2
> 
> But cmdproxy.exe expects one single argument after /c, .i.e.
> cmdproxy.exe /c "test.bat arg1 arg2". cmd.exe on the other hand uses all
> remaining arguments on the command line.
> 
> To me it looks like the regexp is used to avoid using cmdproxy.exe, but
> it fails because of the extra \\`.

Thanks, I installed that change (trunk revision 107089).

[Message part 3 (message/rfc822, inline)]
From: Lars Ljung <lars <at> matholka.se>
To: bug-gnu-emacs <at> gnu.org
Subject: 24.0.92; Wrong init value for eshell-windows-shell-file
Date: Mon, 16 Jan 2012 22:45:50 +0100
The function eshell-invoke-batch-file expects that
eshell-windows-shell-file points to something with the behaviour of
cmd.exe. Currently it defaults to the path to cmdproxy.exe (the default
value of shell-file-name), which will not work properly.

The patch below solves this issue.

=== modified file 'lisp/eshell/esh-ext.el'
--- lisp/eshell/esh-ext.el	2012-01-05 09:46:05 +0000
+++ lisp/eshell/esh-ext.el	2012-01-16 20:21:27 +0000
@@ -91,7 +91,7 @@

 (defcustom eshell-windows-shell-file
   (if (eshell-under-windows-p)
-      (if (string-match "\\(\\`cmdproxy\\|sh\\)\\.\\(com\\|exe\\)"
+      (if (string-match "\\(cmdproxy\\|sh\\)\\.\\(com\\|exe\\)"
 			shell-file-name)
 	  (or (eshell-search-path "cmd.exe")
 	      (eshell-search-path "command.com"))




This bug report was last modified 13 years and 165 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.