summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPierre Ossman <ossman@cendio.se>2021-11-26 11:13:06 +0100
committerPierre Ossman <ossman@cendio.se>2021-11-26 11:13:06 +0100
commit65d6357cdf37f6523bf04cccadc8188f4fee462e (patch)
tree12b20edaa4089eedc79d180b3e852527e70900dc
parentbfb6ac259d3176b916ab6353619cb420f8daa71e (diff)
downloadnovnc-65d6357cdf37f6523bf04cccadc8188f4fee462e.tar.gz
Add missing ZRLE encoding constant
Also add a unit test to catch omissions like this in the future.
-rw-r--r--core/encodings.js2
-rw-r--r--tests/test.rfb.js4
2 files changed, 6 insertions, 0 deletions
diff --git a/core/encodings.js b/core/encodings.js
index 51c0992..399fb6f 100644
--- a/core/encodings.js
+++ b/core/encodings.js
@@ -12,6 +12,7 @@ export const encodings = {
encodingRRE: 2,
encodingHextile: 5,
encodingTight: 7,
+ encodingZRLE: 16,
encodingTightPNG: -260,
pseudoEncodingQualityLevel9: -23,
@@ -38,6 +39,7 @@ export function encodingName(num) {
case encodings.encodingRRE: return "RRE";
case encodings.encodingHextile: return "Hextile";
case encodings.encodingTight: return "Tight";
+ case encodings.encodingZRLE: return "ZRLE";
case encodings.encodingTightPNG: return "TightPNG";
default: return "[unknown encoding " + num + "]";
}
diff --git a/tests/test.rfb.js b/tests/test.rfb.js
index f70bc14..18e5c1d 100644
--- a/tests/test.rfb.js
+++ b/tests/test.rfb.js
@@ -1623,6 +1623,10 @@ describe('Remote Frame Buffer Protocol Client', function () {
expect(RFB.messages.pixelFormat).to.have.been.calledBefore(RFB.messages.clientEncodings);
expect(RFB.messages.clientEncodings).to.have.been.calledOnce;
expect(RFB.messages.clientEncodings.getCall(0).args[1]).to.include(encodings.encodingTight);
+ RFB.messages.clientEncodings.getCall(0).args[1].forEach(enc => {
+ expect(enc).to.be.a('number');
+ expect(Number.isInteger(enc)).to.be.true;
+ });
expect(RFB.messages.clientEncodings).to.have.been.calledBefore(RFB.messages.fbUpdateRequest);
expect(RFB.messages.fbUpdateRequest).to.have.been.calledOnce;
expect(RFB.messages.fbUpdateRequest).to.have.been.calledWith(client._sock, false, 0, 0, 27, 32);