diff -r 6049c954a703 Lib/test/audiotests.py --- a/Lib/test/audiotests.py Sun Nov 17 23:39:13 2013 +0200 +++ b/Lib/test/audiotests.py Mon Nov 18 01:08:10 2013 +0200 @@ -6,7 +6,8 @@ import sys def byteswap2(data): - a = array.array('h', data) + a = array.array('h') + a.frombytes(data) a.byteswap() return a.tobytes() @@ -17,7 +18,8 @@ return bytes(ba) def byteswap4(data): - a = array.array('i', data) + a = array.array('i') + a.frombytes(data) a.byteswap() return a.tobytes() diff -r 6049c954a703 Lib/wave.py --- a/Lib/wave.py Sun Nov 17 23:39:13 2013 +0200 +++ b/Lib/wave.py Mon Nov 18 01:08:10 2013 +0200 @@ -443,7 +443,9 @@ data = self._convert(data) if self._sampwidth in (2, 4) and sys.byteorder == 'big': import array - data = array.array(_array_fmts[self._sampwidth], data) + a = array.array(_array_fmts[self._sampwidth]) + a.frombytes(data) + data = a assert data.itemsize == self._sampwidth data.byteswap() data.tofile(self._file)