summaryrefslogtreecommitdiff
path: root/lisp/net
diff options
context:
space:
mode:
authorNoam Postavsky <npostavs@gmail.com>2017-04-07 18:24:35 -0400
committerNoam Postavsky <npostavs@gmail.com>2017-04-07 18:24:35 -0400
commit9e27e0d1a6c90d0d29e41884155245b6c3378b0a (patch)
tree38b31624dfa3f11a7f01ca0fa5dbf02644fb195d /lisp/net
parent88532ae818f3e0211c14826a618bd0a80e30e993 (diff)
downloademacs-9e27e0d1a6c90d0d29e41884155245b6c3378b0a.tar.gz
emacs-9e27e0d1a6c90d0d29e41884155245b6c3378b0a.tar.bz2
emacs-9e27e0d1a6c90d0d29e41884155245b6c3378b0a.zip
Fix handling of non-integer START param to write-region
The previous patch for Bug#354 incorrectly assumed that START would always be an integer. * lisp/epa-file.el (epa-file-write-region): * lisp/jka-compr.el (jka-compr-write-region): * lisp/net/ange-ftp.el (ange-ftp-write-region): * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region): * lisp/net/tramp-sh.el (tramp-sh-handle-write-region): * src/fileio.c (write_region): Handle nil and string values of START.
Diffstat (limited to 'lisp/net')
-rw-r--r--lisp/net/ange-ftp.el6
-rw-r--r--lisp/net/tramp-gvfs.el6
-rw-r--r--lisp/net/tramp-sh.el5
3 files changed, 14 insertions, 3 deletions
diff --git a/lisp/net/ange-ftp.el b/lisp/net/ange-ftp.el
index aecb9e1ecbe..6e84269e308 100644
--- a/lisp/net/ange-ftp.el
+++ b/lisp/net/ange-ftp.el
@@ -3284,7 +3284,11 @@ system TYPE.")
(set-buffer-modified-p nil)))
;; ensure `last-coding-system-used' has an appropriate value
(setq last-coding-system-used coding-system-used)
- (ange-ftp-message "Wrote %d characters to `%s'" (- end start) abbr)
+ (ange-ftp-message "Wrote %d characters to `%s'"
+ (cond ((null start) (buffer-size))
+ ((stringp start) (length start))
+ (t (- end start)))
+ abbr)
(ange-ftp-add-file-entry filename))
(ange-ftp-real-write-region start end filename append visit))))
diff --git a/lisp/net/tramp-gvfs.el b/lisp/net/tramp-gvfs.el
index 8ab34af85b7..b7477271d70 100644
--- a/lisp/net/tramp-gvfs.el
+++ b/lisp/net/tramp-gvfs.el
@@ -1223,7 +1223,11 @@ file-notify events."
;; The end.
(when (or (eq visit t) (null visit) (stringp visit))
- (tramp-message v 0 "Wrote %d characters to `%s'" (- end start) filename))
+ (tramp-message v 0 "Wrote %d characters to `%s'"
+ (cond ((null start) (buffer-size))
+ ((stringp start) (length start))
+ (t (- end start)))
+ filename))
(run-hooks 'tramp-handle-write-region-hook)))
diff --git a/lisp/net/tramp-sh.el b/lisp/net/tramp-sh.el
index f78f54154fd..a8556b9a0d0 100644
--- a/lisp/net/tramp-sh.el
+++ b/lisp/net/tramp-sh.el
@@ -3412,7 +3412,10 @@ the result will be a local, non-Tramp, file name."
(tramp-set-file-uid-gid filename uid gid))
(when (or (eq visit t) (null visit) (stringp visit))
(tramp-message v 0 "Wrote %d characters to `%s'"
- (- end start) filename))
+ (cond ((null start) (buffer-size))
+ ((stringp start) (length start))
+ (t (- end start)))
+ filename))
(run-hooks 'tramp-handle-write-region-hook)))))
(defvar tramp-vc-registered-file-names nil