From: Bill Wohler Date: Wed, 11 Jan 2006 09:01:22 +0000 (+0000) Subject: (mh-x-image-url-cache-canonicalize): Use url-hexify-string to remove X-Git-Tag: emacs-pretest-22.0.90~4801 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=e1fbc812b9ac00de76cb56ce86434918e19346c3;p=emacs.git (mh-x-image-url-cache-canonicalize): Use url-hexify-string to remove special characters from filenames (closes SF #1396499). --- diff --git a/lisp/mh-e/ChangeLog b/lisp/mh-e/ChangeLog index e5e62c0c382..b556462dd41 100644 --- a/lisp/mh-e/ChangeLog +++ b/lisp/mh-e/ChangeLog @@ -1,7 +1,16 @@ +2006-01-11 Bill Wohler + + * mh-utils.el (mh-x-image-url-cache-canonicalize): Use + url-hexify-string to remove special characters from filenames + (closes SF #1396499). Note that this invalidates the existing + names in your cache so you might as well remove + ~/Mail/.mhe-x-image-cache/* now. + 2006-01-10 Bill Wohler * mh-comp.el (mh-insert-letter): If you choose a different folder, - the cur message is used (closes SF #1205890). + the cur message is used. Sync docstring with manual (closes SF + #1205890). * mh-mime.el (mh-compose-forward): Use standard range argument instead of messages. Use more powerful mh-read-range instead of diff --git a/lisp/mh-e/mh-utils.el b/lisp/mh-e/mh-utils.el index b600a432735..d9bb6dda979 100644 --- a/lisp/mh-e/mh-utils.el +++ b/lisp/mh-e/mh-utils.el @@ -1489,12 +1489,16 @@ path is generated." (defun mh-x-image-url-cache-canonicalize (url) "Canonicalize URL. -Replace the ?/ character with a ?! character and append .png." - (format "%s/%s.png" mh-x-image-cache-directory +Replace the ?/ character with a ?! character and append .png. +Also replaces special characters with `url-hexify-string' since +not all characters, such as :, are legal within Windows +filenames. See URL `http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/fs/naming_a_file.asp'." + (format "%s/%s.png" mh-x-image-cache-directory + (url-hexify-string (with-temp-buffer (insert url) (mh-replace-string "/" "!") - (buffer-string)))) + (buffer-string))))) (defun mh-x-image-set-download-state (file data) "Setup a symbolic link from FILE to DATA."