[jsinterp] 'reverse' modifies the array in place (fixes #3334)

This commit is contained in:
Jaime Marquínez Ferrándiz 2014-07-24 11:08:31 +02:00
parent 825abb8175
commit ebe832dc37
2 changed files with 9 additions and 2 deletions

View File

@ -62,7 +62,13 @@
u'js', u'js',
84, 84,
u'123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQ0STUVWXYZ!"#$%&\'()*+,@./:;<=>' u'123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQ0STUVWXYZ!"#$%&\'()*+,@./:;<=>'
) ),
(
u'https://s.ytimg.com/yts/jsbin/html5player-en_US-vfl9FYC6l.js',
u'js',
83,
u'123456789abcdefghijklmnopqr0tuvwxyzABCDETGHIJKLMNOPQRS>UVWXYZ!"#$%&\'()*+,-./:;<=F'
),
] ]

View File

@ -98,7 +98,8 @@ def interpret_expression(self, expr, local_vars, allow_recursion):
return argvals[0].join(obj) return argvals[0].join(obj)
if member == 'reverse': if member == 'reverse':
assert len(argvals) == 0 assert len(argvals) == 0
return obj[::-1] obj.reverse()
return obj
if member == 'slice': if member == 'slice':
assert len(argvals) == 1 assert len(argvals) == 1
return obj[argvals[0]:] return obj[argvals[0]:]