summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2015-03-26 15:17:51 -0400
committerStefan Monnier <monnier@iro.umontreal.ca>2015-03-26 15:17:51 -0400
commit118b6a92f51f7ac10f83f7b0210afd31fbd694f4 (patch)
tree198f8bb3d1337b4840910b4eb0b862673f4cb6fa
parent5e0314f6fabca1af214240177a28d3822d6ef3e5 (diff)
(url-insert-file-contents): Set buffer-file-coding-system
Fixes: debbugs:20010 * lisp/url/url-handlers.el (url-insert-file-contents): Call after-insert-file-set-coding like insert-file-contents, to set buffer-file-coding-system. [Backport]
-rw-r--r--lisp/url/ChangeLog6
-rw-r--r--lisp/url/url-handlers.el9
2 files changed, 13 insertions, 2 deletions
diff --git a/lisp/url/ChangeLog b/lisp/url/ChangeLog
index 6e0c157e39..c26b080c05 100644
--- a/lisp/url/ChangeLog
+++ b/lisp/url/ChangeLog
@@ -1,3 +1,9 @@
+2015-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * url-handlers.el (url-insert-file-contents): Call
+ after-insert-file-set-coding like insert-file-contents, to set
+ buffer-file-coding-system (bug#20010). [Backport]
+
2014-10-20 Glenn Morris <rgm@gnu.org>
* url-vars.el (url-bug-address): Make into an obsolete alias.
diff --git a/lisp/url/url-handlers.el b/lisp/url/url-handlers.el
index 9c16cffd4a..e42f552c41 100644
--- a/lisp/url/url-handlers.el
+++ b/lisp/url/url-handlers.el
@@ -324,8 +324,13 @@ They count bytes from the beginning of the body."
(unless (cadr size-and-charset)
;; If the headers don't specify any particular charset, use the
;; usual heuristic/rules that we apply to files.
- (decode-coding-inserted-region start (point) url visit beg end replace))
- (list url (car size-and-charset))))))
+ (decode-coding-inserted-region start (point) url
+ visit beg end replace))
+ (let ((inserted (car size-and-charset)))
+ (when (fboundp 'after-insert-file-set-coding)
+ (let ((insval (after-insert-file-set-coding inserted visit)))
+ (if insval (setq inserted insval))))
+ (list url inserted))))))
(put 'insert-file-contents 'url-file-handlers 'url-insert-file-contents)