emacs-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debbugs-tracker] bug#18232: closed (24.3.92; Filename completion change


From: GNU bug Tracking System
Subject: [debbugs-tracker] bug#18232: closed (24.3.92; Filename completion changes the current working directory)
Date: Sun, 10 Aug 2014 21:09:01 +0000

Your message dated Sun, 10 Aug 2014 14:08:15 -0700
with message-id <address@hidden>
and subject line Re: bug#18232: 24.3.92; Filename completion changes the 
current working directory
has caused the debbugs.gnu.org bug report #18232,
regarding 24.3.92; Filename completion changes the current working directory
to be marked as done.

(If you believe you have received this mail in error, please contact
address@hidden)


-- 
18232: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=18232
GNU Bug Tracking System
Contact address@hidden with problems
--- Begin Message --- Subject: 24.3.92; Filename completion changes the current working directory Date: Sat, 09 Aug 2014 21:56:01 +0200 (CEST)
C-x C-f (find-file) with filename completion changes the current
working directory (cwd) of emacs.

This is annoying for the following reason:

If you temporarily mount a filesystem and then visit a file in that
filesystem, you cannot unmount the filesystem because it is now the
cwd of a running process.

The obvious workaround is to first visit a file not in this
filesystem, but that is annoying and should be unnecessary.

I have narrowed the cause down to filename completion:

Starting with emacs -Q:

 - Find the PID of the running emacs process.
 - In a root shell, run “lsof -p PID | grep cwd”.
 - Evaluate (read-file-name-default "Filename: ") and don't hit RETURN
 - Navigate to some other directory, and cause filename completion to
   happen. For example, type “/tmp/” and follow up with TAB.
 - Run the lsof command again, and note that the current working
   directory has changed.


In GNU Emacs 24.3.92.2 (x86_64-apple-darwin13.3.0, NS apple-appkit-1265.21)
 of 2014-08-08 on airy
Windowing system distributor `Apple', version 10.3.1265
Configured using:
 `configure --with-ns'

Important settings:
  value of $LC_CTYPE: en_US.UTF-8
  value of $LANG: C
  locale-coding-system: utf-8-unix



--- End Message ---
--- Begin Message --- Subject: Re: bug#18232: 24.3.92; Filename completion changes the current working directory Date: Sun, 10 Aug 2014 14:08:15 -0700 User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.0
Jan Djärv wrote:
This bug needs to be fixed in the GNULib code, by really use restore_cwd as it 
was intended

Just to clarify, the bug is Emacs's little substitute for Gnulib, not in Gnulib itself. Perhaps at some point Emacs should just use Gnulib here, but for now it's safer to migrate a bit more of Gnulib into Emacs to avoid this regression. I reproduced the problem on Fedora 20 by building an Emacs that was crippled to not use readlinkat etc., and installed a patch that worked for me as emacs-24 bzr 117437 (simplified in 117438).


--- End Message ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]