Commit 27d6c5a8 authored by Leo Liu's avatar Leo Liu

Fix for the buffer-local rcirc-encode-coding-system case

in rcirc-split-message.
parent 6f97980a
2012-08-15 Leo Liu <sdl.web@gmail.com>
* net/rcirc.el (rcirc-split-message): Fix for buffer-local
rcirc-encode-coding-system.
2012-08-13 Leo Liu <sdl.web@gmail.com>
* net/rcirc.el (rcirc-split-message): New function.
......
......@@ -796,22 +796,23 @@ With no argument or nil as argument, use the current buffer."
(defun rcirc-split-message (message)
"Split MESSAGE into chunks within `rcirc-max-message-length'."
(with-temp-buffer
(insert message)
(goto-char (point-min))
(let (result)
(while (not (eobp))
(goto-char (or (byte-to-position rcirc-max-message-length)
(point-max)))
;; max message length is 512 including CRLF
(while (and (not (bobp))
(> (length
(encode-coding-region (point-min) (point)
rcirc-encode-coding-system t))
rcirc-max-message-length))
(forward-char -1))
(push (delete-and-extract-region (point-min) (point)) result))
(nreverse result))))
;; `rcirc-encode-coding-system' can have buffer-local value.
(let ((encoding rcirc-encode-coding-system))
(with-temp-buffer
(insert message)
(goto-char (point-min))
(let (result)
(while (not (eobp))
(goto-char (or (byte-to-position rcirc-max-message-length)
(point-max)))
;; max message length is 512 including CRLF
(while (and (not (bobp))
(> (length (encode-coding-region
(point-min) (point) encoding t))
rcirc-max-message-length))
(forward-char -1))
(push (delete-and-extract-region (point-min) (point)) result))
(nreverse result)))))
(defun rcirc-send-message (process target message &optional noticep silent)
"Send TARGET associated with PROCESS a privmsg with text MESSAGE.
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment