2010-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
* mm-util.el (mm-find-buffer-file-coding-system):
* yenc.el (yenc-decode-region): Don't let-bind a read-only variable.
+2010-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * mm-util.el (mm-find-buffer-file-coding-system):
+ * yenc.el (yenc-decode-region): Don't let-bind a read-only variable.
+
2010-04-22 Andreas Seltenreich <seltenreich@gmx.de>
* message.el (message-generate-headers): Record insertion of optional
2010-04-22 Andreas Seltenreich <seltenreich@gmx.de>
* message.el (message-generate-headers): Record insertion of optional
harmful since it is likely to modify existing data in the buffer.
For instance, it converts \"\\300\\255\" into \"\\255\" in
Emacs 23 (unicode)."
harmful since it is likely to modify existing data in the buffer.
For instance, it converts \"\\300\\255\" into \"\\255\" in
Emacs 23 (unicode)."
+ ;; FIXME: (default-value 'enable-multibyte-characters) is read-only
+ ;; so let-binding it is wrong. The right fix is to not use this
+ ;; macro at all any more, since it's been ill-defined from the start.
(let ((multibyte (make-symbol "multibyte"))
(buffer (make-symbol "buffer")))
`(if mm-emacs-mule
(let ((multibyte (make-symbol "multibyte"))
(buffer (make-symbol "buffer")))
`(if mm-emacs-mule
filename))
(mm-decompress-buffer filename nil t))))
(when decomp
filename))
(mm-decompress-buffer filename nil t))))
(when decomp
- (set-buffer (letf (((default-value 'enable-multibyte-characters) nil))
- (generate-new-buffer " *temp*")))
+ (set-buffer (generate-new-buffer " *temp*"))
+ (mm-disable-multibyte)
(insert decomp)
(setq filename (file-name-sans-extension filename)))
(goto-char (point-min))
(insert decomp)
(setq filename (file-name-sans-extension filename)))
(goto-char (point-min))
(when (re-search-forward "^=yend.*$" end t)
(setq last (match-beginning 0))
(setq footer-alist (yenc-parse-line (match-string 0)))
(when (re-search-forward "^=yend.*$" end t)
(setq last (match-beginning 0))
(setq footer-alist (yenc-parse-line (match-string 0)))
- (letf (((default-value 'enable-multibyte-characters) nil))
- (setq work-buffer (generate-new-buffer " *yenc-work*")))
+ (with-current-buffer
+ (setq work-buffer (generate-new-buffer " *yenc-work*"))
+ (set-buffer-multibyte nil))
(while (< first last)
(setq char (char-after first))
(cond ((or (eq char ?\r)
(while (< first last)
(setq char (char-after first))
(cond ((or (eq char ?\r)