emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] trunk r117746: gnus-art.el (gnus-article-browse-html-save-


From: Katsumi Yamaoka
Subject: [Emacs-diffs] trunk r117746: gnus-art.el (gnus-article-browse-html-save-cid-content, gnus-article-browse-html-parts): Make cid file names relative
Date: Tue, 26 Aug 2014 23:28:14 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 117746
revision-id: address@hidden
parent: address@hidden
committer: Katsumi Yamaoka <address@hidden>
branch nick: trunk
timestamp: Tue 2014-08-26 23:28:22 +0000
message:
  gnus-art.el (gnus-article-browse-html-save-cid-content, 
gnus-article-browse-html-parts): Make cid file names relative
modified:
  lisp/gnus/ChangeLog            changelog-20091113204419-o5vbwnq5f7feedwu-1433
  lisp/gnus/gnus-art.el          gnusart.el-20091113204419-o5vbwnq5f7feedwu-1108
=== modified file 'lisp/gnus/ChangeLog'
--- a/lisp/gnus/ChangeLog       2014-08-21 23:02:23 +0000
+++ b/lisp/gnus/ChangeLog       2014-08-26 23:28:22 +0000
@@ -1,3 +1,8 @@
+2014-08-26  Katsumi Yamaoka  <address@hidden>
+
+       * gnus-art.el (gnus-article-browse-html-save-cid-content)
+       (gnus-article-browse-html-parts): Make cid file names relative.
+
 2014-08-21  Katsumi Yamaoka  <address@hidden>
 
        * mm-view.el (mm-display-inline-fontify): Make the working buffer

=== modified file 'lisp/gnus/gnus-art.el'
--- a/lisp/gnus/gnus-art.el     2014-08-12 02:47:36 +0000
+++ b/lisp/gnus/gnus-art.el     2014-08-26 23:28:22 +0000
@@ -2806,16 +2806,15 @@
                              cid handle directory))
              (throw 'found file)))
           ((equal (concat "<" cid ">") (mm-handle-id handle))
-           (setq file
-                 (expand-file-name
-                  (or (mm-handle-filename handle)
-                      (concat
-                       (make-temp-name "cid")
-                       (car (rassoc (car (mm-handle-type handle))
-                                    mailcap-mime-extensions))))
-                  directory))
-           (mm-save-part-to-file handle file)
-           (throw 'found file))))))))
+           (setq file (or (mm-handle-filename handle)
+                          (concat
+                           (make-temp-name "cid")
+                           (car (rassoc (car (mm-handle-type handle))
+                                        mailcap-mime-extensions)))))
+           (mm-save-part-to-file handle (expand-file-name file directory))
+           (throw 'found (concat (file-name-nondirectory
+                                  (directory-file-name directory))
+                                 "/" file)))))))))
 
 (defun gnus-article-browse-html-parts (list &optional header)
   "View all \"text/html\" parts from LIST.
@@ -2849,6 +2848,19 @@
                   (mm-enable-multibyte)
                 (mm-disable-multibyte))
               (insert content)
+              ;; remove <base>
+              (let ((case-fold-search t))
+                (goto-char (point-min))
+                (when (and (search-forward "<head>" nil t)
+                           (progn
+                             (save-restriction
+                               (narrow-to-region
+                                (point)
+                                (or (search-forward "</head>" nil t) (point)))
+                               (goto-char (point-min)))
+                             (re-search-forward
+                              "[\t\n ]*<base[\t\n ]+[^>]+>[\t\n ]*" nil t)))
+                  (replace-match "\n")))
               ;; resolve cid contents
               (let ((case-fold-search t)
                     cid-file)
@@ -2867,16 +2879,7 @@
                                (with-current-buffer gnus-article-buffer
                                  gnus-article-mime-handles)
                                cid-dir))
-                    (when (eq system-type 'cygwin)
-                      (setq cid-file
-                            (concat "/" (substring
-                                         (with-output-to-string
-                                           (call-process "cygpath" nil
-                                                         standard-output
-                                                         nil "-m" cid-file))
-                                         0 -1))))
-                    (replace-match (concat "file://" cid-file)
-                                   nil nil nil 1))))
+                    (replace-match cid-file nil nil nil 1))))
               (unless content (setq content (buffer-string))))
             (when (or charset header (not file))
               (setq tmp-file (mm-make-temp-file


reply via email to

[Prev in Thread] Current Thread [Next in Thread]