BinaryData uses TypedArrays to read data. It seems that if the ArrayBuffer does 
not divide evenly into the target TypedArray, you get a runtime error.

For example:

readShort() works like this:
var ret:int = new Int16Array(ba, _position, 1)[0];

If _position is not divisible by 2 (i.e. an odd number), this causes a RTE.

readInt() has a similar problem that _position needs to be divisible by 4, etc.

Am I correct that Flash’s ByteArray works correctly in this situation? We can 
use DataViews to solve the problem or we can read the bytes directly.

Thanks,
Harbs

Reply via email to