Subject: bug#7872: closed (Re: bug#7872: Possible fix for relative pathnames given through the command line)

From: [email-masked] (GNU bug Tracking System)
Date: Wed, 26 Jan 2011 17:59:02 +0000

Your bug report

#7872: Possible fix for relative pathnames given through the command line

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

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
7872: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7872
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#7872: Possible fix for relative pathnames given through the command line
From: Jan Djärv <[email-masked]>
To: Roy Liu <[email-masked]>
Cc: [email-masked]
Date: Wed, 26 Jan 2011 19:06:34 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

It seems the right thing to do.  Checked in.  In the future, please use M-x 
report-emacs-bug so we can see the version you are reporting against.  The 
trunk version looks quite different.  It is likely there will be a merge 
conflict here.

	Jan D.

Roy Liu skrev 2011-01-20 03.48:
> I've noticed that Emacs.app opens up relative pathnames twice -- once for the
> actual file, and once for the relative pathname appended to the directory of
> the current buffer.
> For example, trying to open by "a/b/text.txt" opens "a/b/text.txt" and
> attempts to open "a/b/a/b/text.txt".
>
> I wonder if the following patch corrects the problem:
>
> --- lisp/term/ns-win.el.orig    2010-12-12 23:31:04.000000000 -0500
> +++ lisp/term/ns-win.el 2010-12-12 23:32:00.000000000 -0500
> @@ -785,7 +785,7 @@
> "Do a `find-file' with the `ns-input-file' as argument."
>     (interactive)
>     (let ((f) (file) (bufwin1) (bufwin2))
> -    (setq f (file-truename (car ns-input-file)))
> +    (setq f (file-truename (expand-file-name (car ns-input-file)
> command-line-default-directory)))
>       (setq ns-input-file (cdr ns-input-file))
>       (setq file (find-file-noselect f))
>       (setq bufwin1 (get-buffer-window file 'visible))
>
> Here, the input filename is expanded according to the current working
> directory when Emacs was invoked.  Since I'm no expert, I don't know if this
> breaks something else.
>
> Thanks for your time!
>

Subject: Possible fix for relative pathnames given through the command line
From: Roy Liu <[email-masked]>
To: [email-masked]
Date: Wed, 19 Jan 2011 21:48:56 -0500
List-Id: <debbugs-submit.debbugs.gnu.org>

I've noticed that Emacs.app opens up relative pathnames twice -- once for
the actual file, and once for the relative pathname appended to the
directory of the current buffer.
For example, trying to open by "a/b/text.txt" opens "a/b/text.txt" and
attempts to open "a/b/a/b/text.txt".

I wonder if the following patch corrects the problem:

--- lisp/term/ns-win.el.orig    2010-12-12 23:31:04.000000000 -0500
+++ lisp/term/ns-win.el 2010-12-12 23:32:00.000000000 -0500
@@ -785,7 +785,7 @@
   "Do a `find-file' with the `ns-input-file' as argument."
   (interactive)
   (let ((f) (file) (bufwin1) (bufwin2))
-    (setq f (file-truename (car ns-input-file)))
+    (setq f (file-truename (expand-file-name (car ns-input-file)
command-line-default-directory)))
     (setq ns-input-file (cdr ns-input-file))
     (setq file (find-file-noselect f))
     (setq bufwin1 (get-buffer-window file 'visible))

Here, the input filename is expanded according to the current working
directory when Emacs was invoked.  Since I'm no expert, I don't know if this
breaks something else.

Thanks for your time!