Merge a842140b51 into 7a16304e52
This commit is contained in:
commit
d295710c59
|
|
@ -3,3 +3,4 @@ Rebuilding inflator.js
|
||||||
- Download pako from npm
|
- Download pako from npm
|
||||||
- Install browserify using npm
|
- Install browserify using npm
|
||||||
- browserify utils/inflator.partial.js -o include/inflator.js -s inflator
|
- browserify utils/inflator.partial.js -o include/inflator.js -s inflator
|
||||||
|
- apply changes from utils/inflator.diff.js to include/inflator.js
|
||||||
|
|
|
||||||
|
|
@ -32,6 +32,7 @@ var Display;
|
||||||
// the full frame buffer (logical canvas) size
|
// the full frame buffer (logical canvas) size
|
||||||
this._fb_width = 0;
|
this._fb_width = 0;
|
||||||
this._fb_height = 0;
|
this._fb_height = 0;
|
||||||
|
this._fb_cache = null;
|
||||||
|
|
||||||
// the size limit of the viewport (start disabled)
|
// the size limit of the viewport (start disabled)
|
||||||
this._maxWidth = 0;
|
this._maxWidth = 0;
|
||||||
|
|
@ -335,6 +336,7 @@ var Display;
|
||||||
|
|
||||||
this._fb_width = width;
|
this._fb_width = width;
|
||||||
this._fb_height = height;
|
this._fb_height = height;
|
||||||
|
this._fb_cache = new ArrayBuffer(width * height * 4);
|
||||||
|
|
||||||
this._rescale(this._scale);
|
this._rescale(this._scale);
|
||||||
|
|
||||||
|
|
@ -688,7 +690,8 @@ var Display;
|
||||||
},
|
},
|
||||||
|
|
||||||
_rgbImageData: function (x, y, vx, vy, width, height, arr, offset) {
|
_rgbImageData: function (x, y, vx, vy, width, height, arr, offset) {
|
||||||
var img = this._drawCtx.createImageData(width, height);
|
//var img = this._drawCtx.createImageData(width, height);
|
||||||
|
var img = new ImageData(new Uint8ClampedArray(this._fb_cache, 0, width * height * 4), width, height);
|
||||||
var data = img.data;
|
var data = img.data;
|
||||||
for (var i = 0, j = offset; i < width * height * 4; i += 4, j += 3) {
|
for (var i = 0, j = offset; i < width * height * 4; i += 4, j += 3) {
|
||||||
data[i] = arr[j];
|
data[i] = arr[j];
|
||||||
|
|
@ -700,7 +703,8 @@ var Display;
|
||||||
},
|
},
|
||||||
|
|
||||||
_bgrxImageData: function (x, y, vx, vy, width, height, arr, offset) {
|
_bgrxImageData: function (x, y, vx, vy, width, height, arr, offset) {
|
||||||
var img = this._drawCtx.createImageData(width, height);
|
//var img = this._drawCtx.createImageData(width, height);
|
||||||
|
var img = new ImageData(new Uint8ClampedArray(this._fb_cache, 0, width * height * 4), width, height);
|
||||||
var data = img.data;
|
var data = img.data;
|
||||||
for (var i = 0, j = offset; i < width * height * 4; i += 4, j += 4) {
|
for (var i = 0, j = offset; i < width * height * 4; i += 4, j += 4) {
|
||||||
data[i] = arr[j + 2];
|
data[i] = arr[j + 2];
|
||||||
|
|
|
||||||
|
|
@ -889,7 +889,7 @@ function inflate(strm, flush) {
|
||||||
var len; /* length to copy for repeats, bits to drop */
|
var len; /* length to copy for repeats, bits to drop */
|
||||||
var ret; /* return code */
|
var ret; /* return code */
|
||||||
var hbuf = new utils.Buf8(4); /* buffer for gzip header crc calculation */
|
var hbuf = new utils.Buf8(4); /* buffer for gzip header crc calculation */
|
||||||
var opts;
|
var opts = {};
|
||||||
|
|
||||||
var n; // temporary var for NEED_BITS
|
var n; // temporary var for NEED_BITS
|
||||||
|
|
||||||
|
|
@ -1425,7 +1425,7 @@ function inflate(strm, flush) {
|
||||||
state.lencode = state.lendyn;
|
state.lencode = state.lendyn;
|
||||||
state.lenbits = 7;
|
state.lenbits = 7;
|
||||||
|
|
||||||
opts = {bits: state.lenbits};
|
opts.bits = state.lenbits;
|
||||||
ret = inflate_table(CODES, state.lens, 0, 19, state.lencode, 0, state.work, opts);
|
ret = inflate_table(CODES, state.lens, 0, 19, state.lencode, 0, state.work, opts);
|
||||||
state.lenbits = opts.bits;
|
state.lenbits = opts.bits;
|
||||||
|
|
||||||
|
|
@ -1556,7 +1556,7 @@ function inflate(strm, flush) {
|
||||||
concerning the ENOUGH constants, which depend on those values */
|
concerning the ENOUGH constants, which depend on those values */
|
||||||
state.lenbits = 9;
|
state.lenbits = 9;
|
||||||
|
|
||||||
opts = {bits: state.lenbits};
|
opts.bits = state.lenbits;
|
||||||
ret = inflate_table(LENS, state.lens, 0, state.nlen, state.lencode, 0, state.work, opts);
|
ret = inflate_table(LENS, state.lens, 0, state.nlen, state.lencode, 0, state.work, opts);
|
||||||
// We have separate tables & no pointers. 2 commented lines below not needed.
|
// We have separate tables & no pointers. 2 commented lines below not needed.
|
||||||
// state.next_index = opts.table_index;
|
// state.next_index = opts.table_index;
|
||||||
|
|
@ -1573,7 +1573,7 @@ function inflate(strm, flush) {
|
||||||
//state.distcode.copy(state.codes);
|
//state.distcode.copy(state.codes);
|
||||||
// Switch to use dynamic table
|
// Switch to use dynamic table
|
||||||
state.distcode = state.distdyn;
|
state.distcode = state.distdyn;
|
||||||
opts = {bits: state.distbits};
|
opts.bits = state.distbits;
|
||||||
ret = inflate_table(DISTS, state.lens, state.nlen, state.ndist, state.distcode, 0, state.work, opts);
|
ret = inflate_table(DISTS, state.lens, state.nlen, state.ndist, state.distcode, 0, state.work, opts);
|
||||||
// We have separate tables & no pointers. 2 commented lines below not needed.
|
// We have separate tables & no pointers. 2 commented lines below not needed.
|
||||||
// state.next_index = opts.table_index;
|
// state.next_index = opts.table_index;
|
||||||
|
|
@ -2415,4 +2415,4 @@ Inflate.prototype = {
|
||||||
module.exports = {Inflate: Inflate};
|
module.exports = {Inflate: Inflate};
|
||||||
|
|
||||||
},{"../node_modules/pako/lib/zlib/inflate.js":5,"../node_modules/pako/lib/zlib/zstream.js":7}]},{},[8])(8)
|
},{"../node_modules/pako/lib/zlib/inflate.js":5,"../node_modules/pako/lib/zlib/zstream.js":7}]},{},[8])(8)
|
||||||
});
|
});
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue