зеркало из https://github.com/mozilla/shumway.git
Fixes ByteArray and adds URLStream.readBytes
This commit is contained in:
Родитель
71681ae33f
Коммит
e0fc3fc9ef
|
@ -961,8 +961,11 @@ var natives = (function () {
|
|||
}
|
||||
|
||||
var c = new runtime.domain.system.Class("ByteArray", ByteArray, C(ByteArray));
|
||||
c.extendBuiltin(baseClass);
|
||||
|
||||
var BAp = ByteArray.prototype;
|
||||
BAp.indexGet = function (i) { return this.uint8v[i]; };
|
||||
BAp.indexSet = function (i, v) { this.uint8v[i] = v; };
|
||||
|
||||
BAp.cacheViews = function cacheViews() {
|
||||
var a = this.a;
|
||||
|
@ -1063,7 +1066,7 @@ var natives = (function () {
|
|||
};
|
||||
|
||||
BAp.writeBytes = function writeBytes(bytes, offset, length) {
|
||||
if (offset && length) {
|
||||
if (offset || length) {
|
||||
this.writeRawBytes(new Int8Array(bytes.a, offset, length));
|
||||
} else {
|
||||
this.writeRawBytes(bytes.int8v);
|
||||
|
|
|
@ -48,8 +48,16 @@ var URLStreamDefinition = (function () {
|
|||
return stream.bytes[stream.pos++];
|
||||
},
|
||||
readBytes: function readBytes(bytes, offset, length) {
|
||||
//readBytes(bytes:ByteArray, offset:uint=0, length:uint=0):void
|
||||
throw 'Not implemented: URLStream.readBytes';
|
||||
if (length < 0)
|
||||
throw 'Invalid length argument';
|
||||
var stream = this._stream;
|
||||
if (!length)
|
||||
length = stream.remaining();
|
||||
else
|
||||
stream.ensure(length);
|
||||
bytes.writeRawBytes(stream.bytes.subarray(stream.pos,
|
||||
stream.pos + length), offset, length);
|
||||
stream.pos += length;
|
||||
},
|
||||
readDouble: function readDouble() {
|
||||
throw 'Not implemented: URLStream.readDouble';
|
||||
|
|
Двоичные данные
test/swfs/stream1.fla
Двоичные данные
test/swfs/stream1.fla
Двоичный файл не отображается.
Двоичные данные
test/swfs/stream1.swf
Двоичные данные
test/swfs/stream1.swf
Двоичный файл не отображается.
|
@ -4,4 +4,6 @@ byte BE: 18
|
|||
word BE: 13398
|
||||
byte LE: 18
|
||||
word LE: 22068
|
||||
end: 3
|
||||
mid: 3
|
||||
buf: 119,136,153
|
||||
end: 0
|
||||
|
|
Загрузка…
Ссылка в новой задаче