Subject: eww fails to recognize URIs with IPv6 addresses in them
From: Ivan Shmakov <[email-masked]>
To: [email-masked]
Date: Thu, 02 Oct 2014 09:37:49 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

Package:  emacs
Severity: normal

	As of 94758757dfd5, the ‘eww’ function uses the presence of a
	full stop character in its ‘url’ argument as one of the
	conditions to consider the value a URI proper (as opposed to:
	keywords to pass to the search engine, as per
	eww-search-prefix.)

	This, however, fails, as IPv6 addresses are colon-delimited, and
	thus IPv6-based URLs do not usually contain any full stop
	characters (as in: https://[::1]/.)

	Please thus consider the trivial patch MIMEd, which makes EWW
	use ‘[.:]’ (was: ‘\.’) as the respective RE.

-- 
FSF associate member #7257  http://boycottsystemd.org/  … 3013 B6A0 230E 334A
--- a/lisp/net/eww.el
+++ b/lisp/net/eww.el
@@ -154,7 +154,7 @@ defun eww (url)
         (t
          (if (and (= (length (split-string url)) 1)
                  (or (and (not (string-match-p "\\`[\"\'].*[\"\']\\'" url))
-                          (> (length (split-string url "\\.")) 1))
+                          (> (length (split-string url "[.:]")) 1))
                      (string-match eww-local-regex url)))
              (progn
                (unless (string-match-p "\\`[a-zA-Z][-a-zA-Z0-9+.]*://" url)