diff options
Diffstat (limited to 'youtube_dl/swfinterp.py')
| -rw-r--r-- | youtube_dl/swfinterp.py | 10 | 
1 files changed, 10 insertions, 0 deletions
diff --git a/youtube_dl/swfinterp.py b/youtube_dl/swfinterp.py index 7369c94fc..fc704603a 100644 --- a/youtube_dl/swfinterp.py +++ b/youtube_dl/swfinterp.py @@ -451,6 +451,9 @@ class SWFInterpreter(object):                  elif opcode == 36:  # pushbyte                      v = _read_byte(coder)                      stack.append(v) +                elif opcode == 37:  # pushshort +                    v = u30() +                    stack.append(v)                  elif opcode == 38:  # pushtrue                      stack.append(True)                  elif opcode == 39:  # pushfalse @@ -712,6 +715,13 @@ class SWFInterpreter(object):                      value1 = stack.pop()                      res = value1 % value2                      stack.append(res) +                elif opcode == 168:  # bitand +                    value2 = stack.pop() +                    value1 = stack.pop() +                    assert isinstance(value1, int) +                    assert isinstance(value2, int) +                    res = value1 & value2 +                    stack.append(res)                  elif opcode == 171:  # equals                      value2 = stack.pop()                      value1 = stack.pop()  | 
