From ff1b10ca668978186e3c7f7efec79c7d20af1cf3 Mon Sep 17 00:00:00 2001 From: VanyM Date: Thu, 5 Dec 2019 22:36:51 +0300 Subject: [PATCH] Add try catch in every place that uses decodeUTF8 --- core/rfb.js | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/core/rfb.js b/core/rfb.js index 6f02e4d..e584960 100644 --- a/core/rfb.js +++ b/core/rfb.js @@ -1179,7 +1179,12 @@ export default class RFB extends EventTargetMixin { /* Connection name/title */ const name_length = this._sock.rQshift32(); if (this._sock.rQwait('server init name', name_length, 24)) { return false; } - let name = decodeUTF8(this._sock.rQshiftStr(name_length)); + let name = this._sock.rQshiftStr(name_length); + try { + name = decodeUTF8(name); + } catch (e) { + // bypass no-empty + } if (this._rfb_tightvnc) { if (this._sock.rQwait('TightVNC extended server init header', 8, 24 + name_length)) { return false; } @@ -1716,7 +1721,11 @@ export default class RFB extends EventTargetMixin { } let name = this._sock.rQshiftStr(length); - name = decodeUTF8(name); + try { + name = decodeUTF8(name); + } catch (e) { + // bypass no-empty + } this._setDesktopName(name); -- 2.39.2