diff options
author | pukkandan <pukkandan.ytdlp@gmail.com> | 2023-03-03 16:48:54 +0530 |
---|---|---|
committer | dirkf <fieldhouse@gmx.net> | 2023-03-03 15:02:15 +0000 |
commit | 3e92c60fcd94c37428d57153dbdd14cd0a1f9226 (patch) | |
tree | dee1b139d0ae0f4e2a8408ec4c91e642298a1e7a | |
parent | 3da17834a49fad2a97c308fdd89aa26781ef4d60 (diff) |
[jsinterp] Handle `Date` at epoch 0
See yt-dlp/yt_dlp#6400
-rw-r--r-- | test/test_youtube_signature.py | 4 | ||||
-rw-r--r-- | youtube_dl/jsinterp.py | 2 |
2 files changed, 5 insertions, 1 deletions
diff --git a/test/test_youtube_signature.py b/test/test_youtube_signature.py index ac37ffa45..decf7ee38 100644 --- a/test/test_youtube_signature.py +++ b/test/test_youtube_signature.py @@ -68,6 +68,10 @@ _SIG_TESTS = [ _NSIG_TESTS = [ ( + 'https://www.youtube.com/s/player/7862ca1f/player_ias.vflset/en_US/base.js', + 'X_LCxVDjAavgE5t', 'yxJ1dM6iz5ogUg', + ), + ( 'https://www.youtube.com/s/player/9216d1f7/player_ias.vflset/en_US/base.js', 'SLp9F5bwjAdhE9F-', 'gWnb9IK2DJ8Q1w', ), diff --git a/youtube_dl/jsinterp.py b/youtube_dl/jsinterp.py index a3bc42a61..e28670a3f 100644 --- a/youtube_dl/jsinterp.py +++ b/youtube_dl/jsinterp.py @@ -405,7 +405,7 @@ class JSInterpreter(object): left, right = self._separate_at_paren(obj[len(klass):]) argvals = self.interpret_iter(left, local_vars, allow_recursion) expr = konstr(*argvals) - if not expr: + if expr is None: raise self.Exception('Failed to parse {klass} {left!r:.100}'.format(**locals()), expr=expr) expr = self._dump(expr, local_vars) + right break |