From c81405e38d2a18907301ffe10dd663e7eec2606e Mon Sep 17 00:00:00 2001 From: Lars Ingebrigtsen Date: Mon, 20 Feb 2012 11:34:07 +0100 Subject: [PATCH] Try to fix nnimap group name encoding confusion * nnimap.el (nnimap-request-list): Return the group names encoded as utf8. Otherwise non-European group names don't work. (nnimap-request-newgroups): Ditto. --- lisp/ChangeLog | 4 ++++ lisp/nnimap.el | 12 ++++++------ 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index ee98698ff..79bd696c4 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,9 @@ 2012-02-20 Lars Ingebrigtsen + * nnimap.el (nnimap-request-list): Return the group names encoded as + utf8. Otherwise non-European group names don't work. + (nnimap-request-newgroups): Ditto. + * gnus-sum.el (gnus-summary-insert-old-articles): Fix the syntax for the default in `read-string' (bug#10757). diff --git a/lisp/nnimap.el b/lisp/nnimap.el index 6cbd83c8f..f978b8c99 100644 --- a/lisp/nnimap.el +++ b/lisp/nnimap.el @@ -1191,7 +1191,8 @@ textual parts.") (dolist (response responses) (let* ((sequence (car response)) (response (cadr response)) - (group (cadr (assoc sequence sequences)))) + (group (cadr (assoc sequence sequences))) + (egroup (encode-coding-string group 'utf-8))) (when (and group (equal (caar response) "OK")) (let ((uidnext (nnimap-find-parameter "UIDNEXT" response)) @@ -1203,15 +1204,14 @@ textual parts.") (setq highest (1- (string-to-number (car uidnext))))) (cond ((null highest) - (insert (format "%S 0 1 y\n" (utf7-decode group t)))) + (insert (format "%S 0 1 y\n" egroup))) ((zerop exists) ;; Empty group. - (insert (format "%S %d %d y\n" - (utf7-decode group t) + (insert (format "%S %d %d y\n" egroup highest (1+ highest)))) (t ;; Return the widest possible range. - (insert (format "%S %d 1 y\n" (utf7-decode group t) + (insert (format "%S %d 1 y\n" egroup (or highest exists))))))))) t))))) @@ -1223,7 +1223,7 @@ textual parts.") (nnimap-get-groups))) (unless (assoc group nnimap-current-infos) ;; Insert dummy numbers here -- they don't matter. - (insert (format "%S 0 1 y\n" (utf7-encode group))))) + (insert (format "%S 0 1 y\n" (encode-coding-string group 'utf-8))))) t))) (deffoo nnimap-retrieve-group-data-early (server infos) -- 2.25.1