summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
authorRichard M. Stallman <rms@gnu.org>2003-04-14 10:06:55 +0000
committerRichard M. Stallman <rms@gnu.org>2003-04-14 10:06:55 +0000
commit872a0a6ff33db07994a8e89c5423875cf672a98f (patch)
treed1b253a4abc7d41f1d2d58163e68dcae747328c4 /lisp
parent7065d42f229b6c004854f2e178209fbb3293226f (diff)
downloademacs-872a0a6ff33db07994a8e89c5423875cf672a98f.tar.gz
emacs-872a0a6ff33db07994a8e89c5423875cf672a98f.tar.bz2
emacs-872a0a6ff33db07994a8e89c5423875cf672a98f.zip
(after-insert-file-set-coding): Properly treat INSERTED as number of
characters, for both the argument and the value.
Diffstat (limited to 'lisp')
-rw-r--r--lisp/international/mule.el10
1 files changed, 7 insertions, 3 deletions
diff --git a/lisp/international/mule.el b/lisp/international/mule.el
index 8dda6bd0e7c..2b9af0f810c 100644
--- a/lisp/international/mule.el
+++ b/lisp/international/mule.el
@@ -1695,7 +1695,11 @@ function by default."
(setq set-auto-coding-function 'set-auto-coding)
(defun after-insert-file-set-coding (inserted)
- "Set `buffer-file-coding-system' of current buffer after text is inserted."
+ "Set `buffer-file-coding-system' of current buffer after text is inserted.
+INSERTED is the number of characters that were inserted, as figured
+in the situation before this function. Return the number of characters
+inserted, as figured in the situation after. The two numbers can be
+different if the buffer has become unibyte."
(if last-coding-system-used
(let ((coding-system
(find-new-buffer-file-coding-system last-coding-system-used))
@@ -1711,9 +1715,9 @@ function by default."
(= (buffer-size) inserted))
;; For coding systems no-conversion and raw-text...,
;; edit the buffer as unibyte.
- (let ((pos-byte (position-bytes (+ (point) inserted))))
+ (let ((pos-marker (copy-marker (+ (point) inserted))))
(set-buffer-multibyte nil)
- (setq inserted (- pos-byte (position-bytes (point))))))
+ (setq inserted (- pos-marker (point)))))
(set-buffer-modified-p modified-p))))
inserted)