weechat-protocol.js: stricter slicing and type checking
This commit is contained in:
parent
f05fb72aaa
commit
187f22036b
1 changed files with 8 additions and 0 deletions
|
@ -70,6 +70,10 @@ WeeChatProtocol.prototype = {
|
|||
_getType: function() {
|
||||
var t = this._getSlice(3);
|
||||
|
||||
if (!t) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return WeeChatProtocol._uia2s(new Uint8Array(t));
|
||||
},
|
||||
|
||||
|
@ -347,6 +351,10 @@ WeeChatProtocol.prototype = {
|
|||
* @return Sliced array
|
||||
*/
|
||||
_getSlice: function(length) {
|
||||
if (this.dataAt + length > this._data.byteLength) {
|
||||
return null;
|
||||
}
|
||||
|
||||
var slice = this._data.slice(this._dataAt, this._dataAt + length);
|
||||
|
||||
this._dataAt += length;
|
||||
|
|
Loading…
Reference in a new issue