aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorReiner Steib2008-11-29 15:26:49 +0000
committerReiner Steib2008-11-29 15:26:49 +0000
commit9255ec865f643cbeb9403ef86901b7bf10c2e7b8 (patch)
tree05d11254e0f394811000b73e736f24498fb404c2
parent8cc53f96e5dc3d647411e01298e4125ed4b00928 (diff)
downloademacs-9255ec865f643cbeb9403ef86901b7bf10c2e7b8.tar.gz
emacs-9255ec865f643cbeb9403ef86901b7bf10c2e7b8.zip
(nnimap-demule-use-string-to-multibyte): New temporary
variable for debugging bug#464 and bug#1174. (nnimap-demule): Use it.
-rw-r--r--lisp/gnus/ChangeLog6
-rw-r--r--lisp/gnus/nnimap.el23
2 files changed, 29 insertions, 0 deletions
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index b9ebd92e682..9801c459467 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -1,3 +1,9 @@
12008-11-29 Reiner Steib <Reiner.Steib@gmx.de>
2
3 * nnimap.el (nnimap-demule-use-string-to-multibyte): New temporary
4 variable for debugging bug#464 and bug#1174.
5 (nnimap-demule): Use it.
6
12008-11-21 Stefan Monnier <monnier@iro.umontreal.ca> 72008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
2 8
3 * message.el (message-send-mail): Just set the buffer to unibyte 9 * message.el (message-send-mail): Just set the buffer to unibyte
diff --git a/lisp/gnus/nnimap.el b/lisp/gnus/nnimap.el
index 49166b8de82..06a52103043 100644
--- a/lisp/gnus/nnimap.el
+++ b/lisp/gnus/nnimap.el
@@ -901,12 +901,35 @@ function is generally only called when Gnus is shutting down."
901 (when (nnimap-possibly-change-server server) 901 (when (nnimap-possibly-change-server server)
902 (nnoo-status-message 'nnimap server))) 902 (nnoo-status-message 'nnimap server)))
903 903
904(defvar nnimap-demule-use-string-to-multibyte (fboundp 'string-to-multibyte)
905 "Temporary internal debug variable.
906If you have problems (UTF-8 not decoded correctly on IMAP) with
907the default value, please report it as a bug!")
908;; FIXME: Clarify if we need to make this variable conditional on the Emacs
909;; version (Emacs 22 vs. Emacs 23;Emacs 21 doesn't have `string-to-multibyte'
910;; anyhow). --rsteib
911;;
912;; http://thread.gmane.org/gmane.emacs.gnus.general/67112
913;; (bug#464, reported by James Cloos)
914;; http://thread.gmane.org/gmane.emacs.bugs/21524
915;; (bug#1174, reported by Frank Schmitt)
916
904(defun nnimap-demule (string) 917(defun nnimap-demule (string)
905 ;; BEWARE: we used to use string-as-multibyte here which is braindead 918 ;; BEWARE: we used to use string-as-multibyte here which is braindead
906 ;; because it will turn accidental emacs-mule-valid byte sequences 919 ;; because it will turn accidental emacs-mule-valid byte sequences
907 ;; into multibyte chars. --Stef 920 ;; into multibyte chars. --Stef
908 ;; Reverted, braindead got 7.5 out of 10 on imdb, so it can't be 921 ;; Reverted, braindead got 7.5 out of 10 on imdb, so it can't be
909 ;; that bad. --Simon 922 ;; that bad. --Simon
923 (gnus-message 9 "nnimap-demule-use-string-to-multibyte: %s"
924 nnimap-demule-use-string-to-multibyte)
925 (if nnimap-demule-use-string-to-multibyte
926 ;; Stefan
927 (funcall (if (and (fboundp 'string-to-multibyte)
928 (subrp (symbol-function 'string-to-multibyte)))
929 'string-to-multibyte
930 'identity)
931 (or string "")))
932 ;; Simon
910 (funcall (if (and (fboundp 'string-as-multibyte) 933 (funcall (if (and (fboundp 'string-as-multibyte)
911 (subrp (symbol-function 'string-as-multibyte))) 934 (subrp (symbol-function 'string-as-multibyte)))
912 'string-as-multibyte 935 'string-as-multibyte