emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] master d4b44a0: [Gnus] Catch the invalid-operation that id


From: Katsumi Yamaoka
Subject: [Emacs-diffs] master d4b44a0: [Gnus] Catch the invalid-operation that idna.el will issue
Date: Tue, 14 Apr 2015 03:35:27 +0000

branch: master
commit d4b44a07a75666177f8684876c7337c0b91a95da
Author: Katsumi Yamaoka <address@hidden>
Commit: Katsumi Yamaoka <address@hidden>

    [Gnus] Catch the invalid-operation that idna.el will issue
    
    * lisp/gnus/gnus-art.el (gnus-use-idna):
    * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
    * lisp/gnus/message.el (message-use-idna):
    Catch the invalid-operation that idna.el will issue.
---
 lisp/gnus/gnus-art.el |    7 +++++--
 lisp/gnus/gnus-sum.el |    8 +++++---
 lisp/gnus/message.el  |    5 ++++-
 3 files changed, 14 insertions(+), 6 deletions(-)

diff --git a/lisp/gnus/gnus-art.el b/lisp/gnus/gnus-art.el
index b238d65..14f9adc 100644
--- a/lisp/gnus/gnus-art.el
+++ b/lisp/gnus/gnus-art.el
@@ -1627,8 +1627,11 @@ It is a string, such as \"PGP\". If nil, ask user."
 
 (defvar idna-program)
 
-(defcustom gnus-use-idna (and (condition-case nil (require 'idna) (file-error))
-                             (mm-coding-system-p 'utf-8)
+(defcustom gnus-use-idna (and (mm-coding-system-p 'utf-8)
+                             (condition-case nil
+                                 (require 'idna)
+                               (file-error)
+                               (invalid-operation))
                              idna-program
                              (executable-find idna-program))
   "Whether IDNA decoding of headers is used when viewing messages.
diff --git a/lisp/gnus/gnus-sum.el b/lisp/gnus/gnus-sum.el
index 73a0d4b..1d8ad8e 100644
--- a/lisp/gnus/gnus-sum.el
+++ b/lisp/gnus/gnus-sum.el
@@ -9870,9 +9870,11 @@ invalid IDNA string (`xn--bar' is invalid).
 You must have GNU Libidn (URL `http://www.gnu.org/software/libidn/')
 installed for this command to work."
   (interactive "P")
-  (if (not (and (condition-case nil (require 'idna)
-                 (file-error))
-               (mm-coding-system-p 'utf-8)
+  (if (not (and (mm-coding-system-p 'utf-8)
+               (condition-case nil
+                   (require 'idna)
+                 (file-error)
+                 (invalid-operation))
                (symbol-value 'idna-program)
                (executable-find (symbol-value 'idna-program))))
       (gnus-message
diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el
index 3dc2908..1371e70 100644
--- a/lisp/gnus/message.el
+++ b/lisp/gnus/message.el
@@ -1763,7 +1763,10 @@ no, only reply back to the author."
               (let (mucs-ignore-version-incompatibilities)
                 (require 'un-define))
             (error)))
-       (condition-case nil (require 'idna) (file-error))
+       (condition-case nil
+          (require 'idna)
+        (file-error)
+        (invalid-operation))
        idna-program
        (executable-find idna-program)
        (string= (idna-to-ascii "räksmörgås") "xn--rksmrgs-5wao1o")



reply via email to

[Prev in Thread] Current Thread [Next in Thread]