* files.el (parse-colon-path): Return nil for empty path elements.
authorGlenn Morris <rgm@gnu.org>
Mon, 31 Dec 2012 21:20:07 +0000 (13:20 -0800)
committerGlenn Morris <rgm@gnu.org>
Mon, 31 Dec 2012 21:20:07 +0000 (13:20 -0800)
Fixes: debbugs:13296

lisp/ChangeLog
lisp/files.el

index a62a9cd..2a7fc8f 100644 (file)
@@ -1,3 +1,8 @@
+2012-12-31  Glenn Morris  <rgm@gnu.org>
+
+       * files.el (parse-colon-path): Doc fix.  (Bug#12351)
+       Return nil for empty path elements.  (Bug#13296)
+
 2012-12-31  Fabián Ezequiel Gallina  <fgallina@cuca>
 
        * progmodes/python.el (python-nav-end-of-statement): Rewrite in
index 62ad96c..301653a 100644 (file)
@@ -660,11 +660,14 @@ Not actually set up until the first time you use it.")
   "Explode a search path into a list of directory names.
 Directories are separated by `path-separator' (which is colon in
 GNU and Unix systems).  Substitute environment variables into the
-resulting list of directory names."
+resulting list of directory names.  For an empty path element (i.e.,
+a leading or trailing separator, or two adjacent separators), return
+nil (meaning `default-directory') as the associated list element."
   (when (stringp search-path)
     (mapcar (lambda (f)
-             (substitute-in-file-name (file-name-as-directory f)))
-           (split-string search-path path-separator t))))
+             (if (equal "" f) nil
+               (substitute-in-file-name (file-name-as-directory f))))
+           (split-string search-path path-separator))))
 
 (defun cd-absolute (dir)
   "Change current directory to given absolute file name DIR."