diff options
| -rw-r--r-- | test/test_utils.py | 2 | ||||
| -rw-r--r-- | youtube_dl/utils.py | 2 | 
2 files changed, 3 insertions, 1 deletions
| diff --git a/test/test_utils.py b/test/test_utils.py index 9e28e008f..409482c3b 100644 --- a/test/test_utils.py +++ b/test/test_utils.py @@ -507,6 +507,8 @@ class TestUtil(unittest.TestCase):          self.assertEqual(urljoin('http://foo.de/', ''), None)          self.assertEqual(urljoin('http://foo.de/', ['foobar']), None)          self.assertEqual(urljoin('http://foo.de/a/b/c.txt', '.././../d.txt'), 'http://foo.de/d.txt') +        self.assertEqual(urljoin('http://foo.de/a/b/c.txt', 'rtmp://foo.de'), 'rtmp://foo.de') +        self.assertEqual(urljoin(None, 'rtmp://foo.de'), 'rtmp://foo.de')      def test_url_or_none(self):          self.assertEqual(url_or_none(None), None) diff --git a/youtube_dl/utils.py b/youtube_dl/utils.py index d2d3c1a9f..d0cb65814 100644 --- a/youtube_dl/utils.py +++ b/youtube_dl/utils.py @@ -1868,7 +1868,7 @@ def urljoin(base, path):          path = path.decode('utf-8')      if not isinstance(path, compat_str) or not path:          return None -    if re.match(r'^(?:https?:)?//', path): +    if re.match(r'^(?:[a-zA-Z][a-zA-Z0-9+-.]*:)?//', path):          return path      if isinstance(base, bytes):          base = base.decode('utf-8') | 
