Author: Alex Gaynor <[email protected]>
Branch: stdlib-2.7.11
Changeset: r83190:23b3a3180df8
Date: 2016-03-20 10:01 -0400
http://bitbucket.org/pypy/pypy/changeset/23b3a3180df8/
Log: Added some fixes for audioop
diff --git a/lib_pypy/audioop.py b/lib_pypy/audioop.py
--- a/lib_pypy/audioop.py
+++ b/lib_pypy/audioop.py
@@ -553,9 +553,14 @@
def adpcm2lin(cp, size, state):
_check_size(size)
if state is None:
- state = (0, 0)
+ valpred = 0
+ index = 0
+ else:
+ valpred, index = state
+ # XXX: len(stepsizeTable) = 89
+ if valpred >= 0x8000 or valpred < -0x8000 or index >= 89:
+ raise ValueError("bad state")
rv = ffi.new("unsigned char[]", len(cp) * size * 2)
- state_ptr = ffi.new("int[]", state)
+ state_ptr = ffi.new("int[]", [valpred, index])
lib.adcpm2lin(rv, cp, len(cp), size, state_ptr)
return ffi.buffer(rv)[:], tuple(state_ptr)
-
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit