Commit e734477b authored by Jannis Leidel's avatar Jannis Leidel
Browse files

Fixed #17592 -- Handle URLs starting with a dot when using urlize. Thanks, Claude Paroz.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@17435 bcc190cf-cafb-0310-a4f2-bffc1f526a37
parent 4d8a0f89
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -168,7 +168,10 @@ def urlize(text, trim_url_limit=None, nofollow=False, autoescape=False):
                url = smart_urlquote('http://%s' % middle)
            elif not ':' in middle and simple_email_re.match(middle):
                local, domain = middle.rsplit('@', 1)
                try:
                    domain = domain.encode('idna')
                except UnicodeError:
                    continue
                url = 'mailto:%s@%s' % (local, domain)
                nofollow_attr = ''

+4 −0
Original line number Diff line number Diff line
@@ -288,6 +288,10 @@ class DefaultFiltersTests(TestCase):
        self.assertEqual(urlize('usa.gov'),
            u'<a href="http://usa.gov" rel="nofollow">usa.gov</a>')

        # Check urlize don't crash on invalid email with dot-starting domain - see #17592
        self.assertEqual(urlize('email@.stream.ru'),
            u'email@.stream.ru')

    def test_wordcount(self):
        self.assertEqual(wordcount(''), 0)
        self.assertEqual(wordcount(u'oneword'), 1)