From 10e60f8e0d1282ce767e9f13fd004ae333c39844 Mon Sep 17 00:00:00 2001 From: Bryan Naegele Date: Thu, 3 Dec 2015 16:23:30 -0600 Subject: [PATCH] Fixed buffer length override error in cputils --- .travis.yml | 2 +- cputils.js | 8 ++++---- dist/cpexcel.full.js | 8 ++++---- dist/cptable.full.js | 8 ++++---- dist/cputils.js | 8 ++++---- dist/sbcs.full.js | 8 ++++---- 6 files changed, 21 insertions(+), 21 deletions(-) diff --git a/.travis.yml b/.travis.yml index dcead22..e90f162 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,7 +1,7 @@ language: node_js node_js: - "4.1" - - "0.11" + - "0.12" - "0.10" before_install: - "npm install -g mocha voc" diff --git a/cputils.js b/cputils.js index c232895..9093293 100644 --- a/cputils.js +++ b/cputils.js @@ -106,7 +106,7 @@ mdb[2*i] = DD[j]; mdb[2*i+1] = DD[j+1]; } } - mdb.length = 2 * len; + mdb = mdb.slice(0, 2 * len); return mdb.toString('ucs2'); }; }; @@ -193,7 +193,7 @@ magic_decode[65001] = function utf8_d(data) { var len = data.length, w = 0, ww = 0; if(4 * len > mdl) { mdl = 4 * len; mdb = new Buffer(mdl); } - mdb.length = 0; + mdb = mdb.slice(0); var i = 0; if(len >= 3 && data[0] == 0xEF) if(data[1] == 0xBB && data[2] == 0xBF) i = 3; for(var j = 1, k = 0, D = 0; i < len; i+=j) { @@ -208,7 +208,7 @@ mdb[k++] = ww&255; mdb[k++] = ww>>>8; mdb[k++] = w&255; mdb[k++] = (w>>>8)&255; } } - mdb.length = k; + mdb = mdb.slice(0, k); return mdb.toString('ucs2'); }; magic_encode[65001] = function utf8_e(data, ofmt) { @@ -234,7 +234,7 @@ mdb[j++] = 128 + (w&63); } } - mdb.length = j; + mdb = mdb.slice(0, j); if(ofmt === undefined || ofmt === 'buf') return mdb; if(ofmt !== 'arr') return mdb.toString('binary'); return [].slice.call(mdb); diff --git a/dist/cpexcel.full.js b/dist/cpexcel.full.js index 50ca760..b2e34b2 100644 --- a/dist/cpexcel.full.js +++ b/dist/cpexcel.full.js @@ -906,7 +906,7 @@ if (typeof module !== 'undefined' && module.exports) module.exports = cptable; mdb[2*i] = DD[j]; mdb[2*i+1] = DD[j+1]; } } - mdb.length = 2 * len; + mdb = mdb.slice(0, 2 * len); return mdb.toString('ucs2'); }; }; @@ -993,7 +993,7 @@ if (typeof module !== 'undefined' && module.exports) module.exports = cptable; magic_decode[65001] = function utf8_d(data) { var len = data.length, w = 0, ww = 0; if(4 * len > mdl) { mdl = 4 * len; mdb = new Buffer(mdl); } - mdb.length = 0; + mdb = mdb.slice(0); var i = 0; if(len >= 3 && data[0] == 0xEF) if(data[1] == 0xBB && data[2] == 0xBF) i = 3; for(var j = 1, k = 0, D = 0; i < len; i+=j) { @@ -1008,7 +1008,7 @@ if (typeof module !== 'undefined' && module.exports) module.exports = cptable; mdb[k++] = ww&255; mdb[k++] = ww>>>8; mdb[k++] = w&255; mdb[k++] = (w>>>8)&255; } } - mdb.length = k; + mdb = mdb.slice(0, k); return mdb.toString('ucs2'); }; magic_encode[65001] = function utf8_e(data, ofmt) { @@ -1034,7 +1034,7 @@ if (typeof module !== 'undefined' && module.exports) module.exports = cptable; mdb[j++] = 128 + (w&63); } } - mdb.length = j; + mdb = mdb.slice(0, j); if(ofmt === undefined || ofmt === 'buf') return mdb; if(ofmt !== 'arr') return mdb.toString('binary'); return [].slice.call(mdb); diff --git a/dist/cptable.full.js b/dist/cptable.full.js index 5339713..b00bc60 100644 --- a/dist/cptable.full.js +++ b/dist/cptable.full.js @@ -6447,7 +6447,7 @@ if (typeof module !== 'undefined' && module.exports) module.exports = cptable; mdb[2*i] = DD[j]; mdb[2*i+1] = DD[j+1]; } } - mdb.length = 2 * len; + mdb = mdb.slice(0, 2 * len); return mdb.toString('ucs2'); }; }; @@ -6534,7 +6534,7 @@ if (typeof module !== 'undefined' && module.exports) module.exports = cptable; magic_decode[65001] = function utf8_d(data) { var len = data.length, w = 0, ww = 0; if(4 * len > mdl) { mdl = 4 * len; mdb = new Buffer(mdl); } - mdb.length = 0; + mdb = mdb.slice(0); var i = 0; if(len >= 3 && data[0] == 0xEF) if(data[1] == 0xBB && data[2] == 0xBF) i = 3; for(var j = 1, k = 0, D = 0; i < len; i+=j) { @@ -6549,7 +6549,7 @@ if (typeof module !== 'undefined' && module.exports) module.exports = cptable; mdb[k++] = ww&255; mdb[k++] = ww>>>8; mdb[k++] = w&255; mdb[k++] = (w>>>8)&255; } } - mdb.length = k; + mdb = mdb.slice(0, k); return mdb.toString('ucs2'); }; magic_encode[65001] = function utf8_e(data, ofmt) { @@ -6575,7 +6575,7 @@ if (typeof module !== 'undefined' && module.exports) module.exports = cptable; mdb[j++] = 128 + (w&63); } } - mdb.length = j; + mdb = mdb.slice(0, j); if(ofmt === undefined || ofmt === 'buf') return mdb; if(ofmt !== 'arr') return mdb.toString('binary'); return [].slice.call(mdb); diff --git a/dist/cputils.js b/dist/cputils.js index c232895..9093293 100644 --- a/dist/cputils.js +++ b/dist/cputils.js @@ -106,7 +106,7 @@ mdb[2*i] = DD[j]; mdb[2*i+1] = DD[j+1]; } } - mdb.length = 2 * len; + mdb = mdb.slice(0, 2 * len); return mdb.toString('ucs2'); }; }; @@ -193,7 +193,7 @@ magic_decode[65001] = function utf8_d(data) { var len = data.length, w = 0, ww = 0; if(4 * len > mdl) { mdl = 4 * len; mdb = new Buffer(mdl); } - mdb.length = 0; + mdb = mdb.slice(0); var i = 0; if(len >= 3 && data[0] == 0xEF) if(data[1] == 0xBB && data[2] == 0xBF) i = 3; for(var j = 1, k = 0, D = 0; i < len; i+=j) { @@ -208,7 +208,7 @@ mdb[k++] = ww&255; mdb[k++] = ww>>>8; mdb[k++] = w&255; mdb[k++] = (w>>>8)&255; } } - mdb.length = k; + mdb = mdb.slice(0, k); return mdb.toString('ucs2'); }; magic_encode[65001] = function utf8_e(data, ofmt) { @@ -234,7 +234,7 @@ mdb[j++] = 128 + (w&63); } } - mdb.length = j; + mdb = mdb.slice(0, j); if(ofmt === undefined || ofmt === 'buf') return mdb; if(ofmt !== 'arr') return mdb.toString('binary'); return [].slice.call(mdb); diff --git a/dist/sbcs.full.js b/dist/sbcs.full.js index 86075ed..512bc8e 100644 --- a/dist/sbcs.full.js +++ b/dist/sbcs.full.js @@ -211,7 +211,7 @@ if (typeof module !== 'undefined' && module.exports) module.exports = cptable; mdb[2*i] = DD[j]; mdb[2*i+1] = DD[j+1]; } } - mdb.length = 2 * len; + mdb = mdb.slice(0, 2 * len); return mdb.toString('ucs2'); }; }; @@ -298,7 +298,7 @@ if (typeof module !== 'undefined' && module.exports) module.exports = cptable; magic_decode[65001] = function utf8_d(data) { var len = data.length, w = 0, ww = 0; if(4 * len > mdl) { mdl = 4 * len; mdb = new Buffer(mdl); } - mdb.length = 0; + mdb = mdb.slice(0); var i = 0; if(len >= 3 && data[0] == 0xEF) if(data[1] == 0xBB && data[2] == 0xBF) i = 3; for(var j = 1, k = 0, D = 0; i < len; i+=j) { @@ -313,7 +313,7 @@ if (typeof module !== 'undefined' && module.exports) module.exports = cptable; mdb[k++] = ww&255; mdb[k++] = ww>>>8; mdb[k++] = w&255; mdb[k++] = (w>>>8)&255; } } - mdb.length = k; + mdb = mdb.slice(0, k); return mdb.toString('ucs2'); }; magic_encode[65001] = function utf8_e(data, ofmt) { @@ -339,7 +339,7 @@ if (typeof module !== 'undefined' && module.exports) module.exports = cptable; mdb[j++] = 128 + (w&63); } } - mdb.length = j; + mdb = mdb.slice(0, j); if(ofmt === undefined || ofmt === 'buf') return mdb; if(ofmt !== 'arr') return mdb.toString('binary'); return [].slice.call(mdb);