unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: "Lennart Borgman (gmail)" <lennart.borgman@gmail.com>
To: emacs-pretest-bug@gnu.org
Subject: bug#767: 23.0.60; compilation-start gives bad default-directory
Date: Sat, 23 Aug 2008 15:05:04 +0200	[thread overview]
Message-ID: <48B00B00.1050305@gmail.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 925 bytes --]

If on w32 default-directory is something like c:\top\sub then the
subprocess started by compilation-start will get pwd=c:\top.

This can be cured by the attached patch for this special case, but it is
only a demonstration of the problem, not the right fix for this problem.

The attached patch only does

  (let ((default-directory (file-name-as-directory default-directory))

just before calling `start-file-process-shell-command'.

A slightly better fix would probably be to add the same thing in
`start-file-process', but it seems to me that this should handled at the
C level to catch all cases. I do not know where to do that but it must
be done somewhere before make_process in start-process.


In GNU Emacs 23.0.60.1 (i386-mingw-nt5.1.2600)
 of 2008-08-10
Windowing system distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-gcc (3.4) --no-opt --cflags
-Ic:/g/include -fno-crossjumping'

[-- Attachment #2: compile-start-default-directory.diff --]
[-- Type: text/plain, Size: 675 bytes --]

? compile-start-default-directory.diff
Index: compile.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/progmodes/compile.el,v
retrieving revision 1.476
diff -b -u -r1.476 compile.el
--- compile.el	13 Jun 2008 16:22:16 -0000	1.476
+++ compile.el	23 Aug 2008 12:49:59 -0000
@@ -1246,7 +1246,8 @@
 	    (funcall compilation-process-setup-function))
 	(compilation-set-window-height outwin)
 	;; Start the compilation.
-	(let ((proc
+	(let* ((default-directory (file-name-as-directory default-directory))
+               (proc
 	       (if (eq mode t)
 		   ;; comint uses `start-file-process'.
 		   (get-buffer-process

             reply	other threads:[~2008-08-23 13:05 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <87prnfu5sl.fsf@cyd.mit.edu>
2008-08-23 13:05 ` Lennart Borgman (gmail) [this message]
2008-09-07 19:20   ` bug#767: marked as done (23.0.60; compilation-start gives bad default-directory) Emacs bug Tracking System
2008-09-07 19:34   ` bug#767: 23.0.60; compilation-start gives bad default-directory Stefan Monnier
2008-09-07 19:40     ` Lennart Borgman (gmail)
2008-09-07 19:59       ` Stefan Monnier
2008-09-07 20:04         ` Lennart Borgman (gmail)
2008-09-07 20:38           ` Stefan Monnier
2008-09-07 20:59             ` Lennart Borgman (gmail)
2008-09-07 21:19     ` Eli Zaretskii
2008-09-07 23:48       ` Lennart Borgman (gmail)
2008-08-26 22:18 Chong Yidong

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=48B00B00.1050305@gmail.com \
    --to=lennart.borgman@gmail.com \
    --cc=767@emacsbugs.donarmstrong.com \
    --cc=emacs-pretest-bug@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).