emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] master ee1c638: Make `browse-url-of-buffer' work from zip


From: Lars Ingebrigtsen
Subject: [Emacs-diffs] master ee1c638: Make `browse-url-of-buffer' work from zip files
Date: Sat, 17 Aug 2019 20:30:52 -0400 (EDT)

branch: master
commit ee1c638cff27f3bcdd8936617d67f79fe07d6df1
Author: Lars Ingebrigtsen <address@hidden>
Commit: Lars Ingebrigtsen <address@hidden>

    Make `browse-url-of-buffer' work from zip files
    
    * lisp/net/browse-url.el (browse-url-of-buffer): Make `C-c C-v'
    work in HTML buffers visited from zip files and the like
    (bug#10318).
---
 lisp/net/browse-url.el | 22 ++++++++++++----------
 1 file changed, 12 insertions(+), 10 deletions(-)

diff --git a/lisp/net/browse-url.el b/lisp/net/browse-url.el
index 135f11f..3151dae 100644
--- a/lisp/net/browse-url.el
+++ b/lisp/net/browse-url.el
@@ -714,16 +714,18 @@ narrowed."
           (and (not (buffer-narrowed-p))
                (or buffer-file-name
                    (and (boundp 'dired-directory) dired-directory)))))
-      (or file-name
-         (progn
-           (or browse-url-temp-file-name
-               (setq browse-url-temp-file-name
-                     (convert-standard-filename
-                      (make-temp-file
-                       (expand-file-name "burl" browse-url-temp-dir)
-                       nil ".html"))))
-           (setq file-name browse-url-temp-file-name)
-           (write-region (point-min) (point-max) file-name nil 'no-message)))
+      (when (or (not file-name)
+                ;; This can happen when we're looking at a file from a
+                ;; zip file buffer, for instance.
+                (not (file-exists-p file-name)))
+       (unless browse-url-temp-file-name
+         (setq browse-url-temp-file-name
+               (convert-standard-filename
+                (make-temp-file
+                 (expand-file-name "burl" browse-url-temp-dir)
+                 nil ".html"))))
+       (setq file-name browse-url-temp-file-name)
+       (write-region (point-min) (point-max) file-name nil 'no-message))
       (browse-url-of-file file-name))))
 
 (defun browse-url-delete-temp-file (&optional temp-file-name)



reply via email to

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