diff options
author | Lars Ingebrigtsen <larsi@gnus.org> | 2019-06-13 03:12:03 +0200 |
---|---|---|
committer | Lars Ingebrigtsen <larsi@gnus.org> | 2019-06-13 03:12:03 +0200 |
commit | 4752de83493df806b8cce0ff430f62fdcda46db2 (patch) | |
tree | 792c3dcb496be665b21f76a493384b076107850b | |
parent | c25e3754ed85b668f2a9b56db8eb5572cf973826 (diff) | |
download | emacs-4752de83493df806b8cce0ff430f62fdcda46db2.tar.gz |
Avoid string-make-multibyte in ps-mode.el
* lisp/progmodes/ps-mode.el (ps-mode-octal-region): Avoid usage of
string-make-multibyte, but work in both unibyte and multibyte buffers.
-rw-r--r-- | lisp/progmodes/ps-mode.el | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/lisp/progmodes/ps-mode.el b/lisp/progmodes/ps-mode.el index 0ea2bee0aa2..989a9941b44 100644 --- a/lisp/progmodes/ps-mode.el +++ b/lisp/progmodes/ps-mode.el @@ -737,11 +737,10 @@ Only one `%' is removed, and it has to be in the first column." (setq i 0) (while (re-search-forward "[\200-\377]" (marker-position endm) t) (setq i (1+ i)) - (backward-char) - (insert (format "\\%03o" (string-to-char - (string-make-unibyte - (buffer-substring (point) (1+ (point))))))) - (delete-char 1)) + (replace-match (format "\\%03o" + (multibyte-char-to-unibyte + (char-after (1- (point))))) + t t)) (message "%d change%s made" i (if (= i 1) "" "s")) (set-marker endm nil))))) |