summaryrefslogtreecommitdiff
path: root/lisp/url/url-util.el
diff options
context:
space:
mode:
authorDavid Engster <deng@randomsample.de>2012-08-12 13:35:15 -0400
committerStefan Monnier <monnier@iro.umontreal.ca>2012-08-12 13:35:15 -0400
commit577d5eea9a7b6f0cfdf7fafb6d2fdc82e4d702a7 (patch)
treed8146f77ca080d60b6f7b98578f2ceb077bd4dc1 /lisp/url/url-util.el
parentba10c48cc64dbe9daf5561bf4920fb0e384cc21e (diff)
downloademacs-577d5eea9a7b6f0cfdf7fafb6d2fdc82e4d702a7.tar.gz
emacs-577d5eea9a7b6f0cfdf7fafb6d2fdc82e4d702a7.tar.bz2
emacs-577d5eea9a7b6f0cfdf7fafb6d2fdc82e4d702a7.zip
* lisp/url/url-util.el (url-file-directory, url-file-nondirectory): Avoid
file-name-directory and file-name-nondirectory internally. Fixes: debbugs:11981
Diffstat (limited to 'lisp/url/url-util.el')
-rw-r--r--lisp/url/url-util.el11
1 files changed, 7 insertions, 4 deletions
diff --git a/lisp/url/url-util.el b/lisp/url/url-util.el
index 2faca26f2dd..f654830e387 100644
--- a/lisp/url/url-util.el
+++ b/lisp/url/url-util.el
@@ -247,8 +247,9 @@ Will not do anything if `url-show-status' is nil."
(cond
((null file) "")
((string-match "\\?" file)
- (file-name-directory (substring file 0 (match-beginning 0))))
- (t (file-name-directory file))))
+ (url-file-directory (substring file 0 (match-beginning 0))))
+ ((string-match "\\(.*\\(/\\|%2[fF]\\)\\)" file)
+ (match-string 1 file))))
;;;###autoload
(defun url-file-nondirectory (file)
@@ -256,8 +257,10 @@ Will not do anything if `url-show-status' is nil."
(cond
((null file) "")
((string-match "\\?" file)
- (file-name-nondirectory (substring file 0 (match-beginning 0))))
- (t (file-name-nondirectory file))))
+ (url-file-nondirectory (substring file 0 (match-beginning 0))))
+ ((string-match ".*\\(?:/\\|%2[fF]\\)\\(.*\\)" file)
+ (match-string 1 file))
+ (t file)))
;;;###autoload
(defun url-parse-query-string (query &optional downcase allow-newlines)