[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
`file-relative-name' for compressed files
From: |
Emilio Lopes |
Subject: |
`file-relative-name' for compressed files |
Date: |
Fri, 11 Jun 2004 00:15:32 +0200 |
User-agent: |
Emacs Gnus |
1- Start a fresh version of Emacs (with "emacs --no-init-file --no-site-file")
2- Turn auto-compression-mode on: M-x auto-compression-mode
3- Now evaluating the following code
(file-relative-name "/a/b/c/foo.gz"
"/a/b/c/")
returns
"/a/b/c/foo.gz"
instead of the expected "foo.gz".
The problem lies on the fact that the expression
(find-file-name-handler filename 'file-remote-p)
or in this specific case
(find-file-name-handler "/a/b/c/foo.gz" 'file-remote-p)
in file-relative-name (files.el) returns `jka-compr-handler'. Later
in this function the file's "remote handler" is compared to the
directory's one. Since they are different (directories are normally
not compressed), the file and directory are considered to lye on
different machines, and thus the full filename is returned.
The following patch should fix this.
2004-06-10 Emilio C. Lopes <address@hidden>
* files.el (file-relative-name): Ignore `jka-compr-handler' when
determining the handler of FILENAME.
*** lisp/files.el.~1.701.~ Sun Jun 6 15:32:03 2004
--- lisp/files.el Fri Jun 11 00:04:11 2004
***************
*** 2912,2918 ****
(file-name-as-directory (expand-file-name (or directory
default-directory))))
(setq filename (expand-file-name filename))
! (let ((hf (find-file-name-handler filename 'file-remote-p))
(hd (find-file-name-handler directory 'file-remote-p)))
(if ;; Conditions for separate trees
(or
--- 2912,2920 ----
(file-name-as-directory (expand-file-name (or directory
default-directory))))
(setq filename (expand-file-name filename))
! (let ((hf (let ((inhibit-file-name-handlers '(jka-compr-handler))
! (inhibit-file-name-operation 'file-remote-p))
! (find-file-name-handler filename 'file-remote-p)))
(hd (find-file-name-handler directory 'file-remote-p)))
(if ;; Conditions for separate trees
(or
- `file-relative-name' for compressed files,
Emilio Lopes <=
- Re: `file-relative-name' for compressed files, Richard Stallman, 2004/06/11
- Re: `file-relative-name' for compressed files, Emilio Lopes, 2004/06/12
- Re: `file-relative-name' for compressed files, Michael Albinus, 2004/06/13
- Re: `file-relative-name' for compressed files, Richard Stallman, 2004/06/14
- Re: `file-relative-name' for compressed files, Michael Albinus, 2004/06/16
- Re: `file-relative-name' for compressed files, Richard Stallman, 2004/06/17
- Re: `file-relative-name' for compressed files, Kai Grossjohann, 2004/06/22
- Re: `file-relative-name' for compressed files, Richard Stallman, 2004/06/23
- Re: `file-relative-name' for compressed files, Kai Grossjohann, 2004/06/26
- Re: `file-relative-name' for compressed files, Emilio Lopes, 2004/06/27