diff --git a/gallery_dl/text.py b/gallery_dl/text.py index a6a9105b..74b87fb7 100644 --- a/gallery_dl/text.py +++ b/gallery_dl/text.py @@ -67,7 +67,7 @@ def nameext_from_url(url, data=None): filename = unquote(filename_from_url(url)) name, _, ext = filename.rpartition(".") - if name: + if name and len(ext) <= 16: data["filename"], data["extension"] = name, ext.lower() else: data["filename"], data["extension"] = filename, "" diff --git a/test/test_text.py b/test/test_text.py index 1daefde8..3ab9e73c 100644 --- a/test/test_text.py +++ b/test/test_text.py @@ -148,6 +148,10 @@ class TestText(unittest.TestCase): self.assertEqual( f("http://example.org/v2/filename.ext?param=value#frag"), result) + # long "extension" + fn = "httpswww.example.orgpath-path-path-path-path-path-path-path" + self.assertEqual(f(fn), {"filename": fn, "extension": ""}) + # invalid arguments for value in INVALID: self.assertEqual(f(value), empty)