From: Lars Ingebrigtsen Date: Sun, 20 Oct 2019 07:40:11 +0000 (+0200) Subject: Protect against invalid punycode X-Git-Tag: emacs-27.0.90~975 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=19f72110fc448e58dcd2d867d1db1fc547b790f2;p=emacs.git Protect against invalid punycode * lisp/net/puny.el (puny-decode-string): Protect against invalid punycode. --- diff --git a/lisp/net/puny.el b/lisp/net/puny.el index 23c7af80619..729076ddbd7 100644 --- a/lisp/net/puny.el +++ b/lisp/net/puny.el @@ -63,7 +63,10 @@ For instance, \"xn--ff-2sa.org\" => \"fśf.org\"." "Decode an IDNA/punycode-encoded string. For instance \"xn--bcher-kva\" => \"bücher\"." (if (string-match "\\`xn--" string) - (puny-decode-string-internal (substring string 4)) + (condition-case nil + (puny-decode-string-internal (substring string 4)) + ;; If the string is invalid Punycode, just return the string. + (args-out-of-range string)) string)) (defconst puny-initial-n 128)