summary refs log tree commit diff
diff options
context:
space:
mode:
authorJaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@gmail.com>2014-07-24 11:08:31 +0200
committerJaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@gmail.com>2014-07-24 11:08:31 +0200
commitebe832dc3777861fd20e38cf7588013e9df80e0e (patch)
tree229cbf3f881bfabc282b43c7481923eb9771be99
parent825abb81759d76e53127644a45e1d6cb7ff4f654 (diff)
downloadyoutube-dl-ebe832dc3777861fd20e38cf7588013e9df80e0e.tar.gz
youtube-dl-ebe832dc3777861fd20e38cf7588013e9df80e0e.tar.xz
youtube-dl-ebe832dc3777861fd20e38cf7588013e9df80e0e.zip
[jsinterp] 'reverse' modifies the array in place (fixes #3334)
-rw-r--r--test/test_youtube_signature.py8
-rw-r--r--youtube_dl/jsinterp.py3
2 files changed, 9 insertions, 2 deletions
diff --git a/test/test_youtube_signature.py b/test/test_youtube_signature.py
index f0f33f1db..8f1afd432 100644
--- a/test/test_youtube_signature.py
+++ b/test/test_youtube_signature.py
@@ -62,7 +62,13 @@ _TESTS = [
         u'js',
         84,
         u'123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQ0STUVWXYZ!"#$%&\'()*+,@./:;<=>'
-    )
+    ),
+    (
+        u'https://s.ytimg.com/yts/jsbin/html5player-en_US-vfl9FYC6l.js',
+        u'js',
+        83,
+        u'123456789abcdefghijklmnopqr0tuvwxyzABCDETGHIJKLMNOPQRS>UVWXYZ!"#$%&\'()*+,-./:;<=F'
+    ),
 ]
 
 
diff --git a/youtube_dl/jsinterp.py b/youtube_dl/jsinterp.py
index 34e5307fa..95e6948ff 100644
--- a/youtube_dl/jsinterp.py
+++ b/youtube_dl/jsinterp.py
@@ -98,7 +98,8 @@ class JSInterpreter(object):
                 return argvals[0].join(obj)
             if member == 'reverse':
                 assert len(argvals) == 0
-                return obj[::-1]
+                obj.reverse()
+                return obj
             if member == 'slice':
                 assert len(argvals) == 1
                 return obj[argvals[0]:]