aboutsummaryrefslogtreecommitdiff
path: root/youtube_dl
diff options
context:
space:
mode:
authorPhilipp Hagemeister <phihag@phihag.de>2015-02-18 23:59:50 +0100
committerPhilipp Hagemeister <phihag@phihag.de>2015-02-18 23:59:51 +0100
commitd305dd73a3d6927f0a2c63d08662a183fa173833 (patch)
treec13bf94c2fc99d90d498bf97078a6f00973053d3 /youtube_dl
parent85d586617750d38d742a24f141b099f6b898d269 (diff)
downloadyoutube-dl-d305dd73a3d6927f0a2c63d08662a183fa173833.tar.xz
[utils] Fix js_to_json
Previously, the runtime could be atrocious for longer inputs.
Diffstat (limited to 'youtube_dl')
-rw-r--r--youtube_dl/utils.py4
1 files changed, 2 insertions, 2 deletions
diff --git a/youtube_dl/utils.py b/youtube_dl/utils.py
index 3eb6bc6d4..4358137a0 100644
--- a/youtube_dl/utils.py
+++ b/youtube_dl/utils.py
@@ -1560,8 +1560,8 @@ def js_to_json(code):
return '"%s"' % v
res = re.sub(r'''(?x)
- "(?:[^"\\]*(?:\\\\|\\")?)*"|
- '(?:[^'\\]*(?:\\\\|\\')?)*'|
+ "(?:[^"\\]*(?:\\\\|\\['"nu]))*[^"\\]*"|
+ '(?:[^'\\]*(?:\\\\|\\['"nu]))*[^'\\]*'|
[a-zA-Z_][.a-zA-Z_0-9]*
''', fix_kv, code)
res = re.sub(r',(\s*\])', lambda m: m.group(1), res)