diff options
| author | Roland McGrath | 1992-09-27 02:27:00 +0000 |
|---|---|---|
| committer | Roland McGrath | 1992-09-27 02:27:00 +0000 |
| commit | ea912aa6945ae9fb0c2075fca46e39975f8cfaad (patch) | |
| tree | d3826b195185dae8214b8dee648cfb50417d9f8e | |
| parent | 6c636af99b672bba196a6fd2d08c950485d18845 (diff) | |
| download | emacs-ea912aa6945ae9fb0c2075fca46e39975f8cfaad.tar.gz emacs-ea912aa6945ae9fb0c2075fca46e39975f8cfaad.zip | |
(file-relative-name): Don't lose when DIRECTORY is nil.
| -rw-r--r-- | lisp/files.el | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lisp/files.el b/lisp/files.el index 0e14d0027f2..0a0052a01ae 100644 --- a/lisp/files.el +++ b/lisp/files.el | |||
| @@ -940,7 +940,8 @@ Value is a list whose car is the name for the backup file | |||
| 940 | (defun file-relative-name (filename &optional directory) | 940 | (defun file-relative-name (filename &optional directory) |
| 941 | "Convert FILENAME to be relative to DIRECTORY (default: default-directory)." | 941 | "Convert FILENAME to be relative to DIRECTORY (default: default-directory)." |
| 942 | (setq filename (expand-file-name filename) | 942 | (setq filename (expand-file-name filename) |
| 943 | directory (file-name-as-directory (or (expand-file-name directory) | 943 | directory (file-name-as-directory (if directory |
| 944 | (expand-file-name directory) | ||
| 944 | default-directory))) | 945 | default-directory))) |
| 945 | (while (not (string-match (concat "^" (regexp-quote directory)) filename)) | 946 | (while (not (string-match (concat "^" (regexp-quote directory)) filename)) |
| 946 | (setq directory (file-name-directory (substring directory 0 -1)))) | 947 | (setq directory (file-name-directory (substring directory 0 -1)))) |