diff --git a/amt-desktop-0.0.2.js b/amt-desktop-0.0.2.js index e186a5c..b836a46 100644 --- a/amt-desktop-0.0.2.js +++ b/amt-desktop-0.0.2.js @@ -105,7 +105,7 @@ var CreateAmtRemoteDesktop = function (divid, scrolldiv) { //var version = parseFloat(obj.acc.substring(4, 11)); //console.log('KVersion: ' + version); obj.state = 1; - delete obj.parent.connectTime; + if (obj.parent) { delete obj.parent.connectTime; } obj.send('RFB 003.008\n'); } else if ((obj.state == 1) && (obj.acc.byteLength >= 1)) { @@ -188,8 +188,11 @@ var CreateAmtRemoteDesktop = function (divid, scrolldiv) { } obj.state = 4; - obj.parent.connectTime = Date.now(); - if (obj.parent) { obj.parent.disconnectCode = 0; obj.parent.xxStateChange(3); } + if (obj.parent) { + obj.parent.connectTime = Date.now(); + obj.parent.disconnectCode = 0; + obj.parent.xxStateChange(3); + } //obj.timer = setInterval(obj.xxOnTimer, 50); // ###BEGIN###{DesktopFocus} diff --git a/index.html b/index.html index 5993e97..9696ba6 100644 --- a/index.html +++ b/index.html @@ -13160,8 +13160,18 @@ if ((readState == 0) && (rstr2hex(data).startsWith('4100000000000000'))) { // We are not authenticated, KVM data starts here. readState = 1; - if (data.length > 8) { amtDesktop.ProcessData(data.substring(8)); } - } else if (readState == 1) { amtDesktop.ProcessData(data); } + if (data.length > 8) { + var view = new Uint8Array(data.length - 8); + for (var i = 8; i < data.length; i++) { view[i] = data.charCodeAt(i); } + amtDesktop.ProcessBinaryData(view.buffer); + //amtDesktop.ProcessData(data.substring(8)); + } + } else if (readState == 1) { + var view = new Uint8Array(data.length); + for (var i = 0; i < data.length; i++) { view[i] = data.charCodeAt(i); } + amtDesktop.ProcessBinaryData(view.buffer); + //amtDesktop.ProcessData(data); + } } else if (recFileProtocol == 200) { // Intel AMT midstream KVM var view = new Uint8Array(data.length);