Encoders/decoders should track the connection object
The connection object is a much more appropriate object for the
decoders and encoders to keep track of. Besides the streams, it also
contains state like connection parameters.
diff --git a/common/rfb/VNCSConnectionST.cxx b/common/rfb/VNCSConnectionST.cxx
index 0000c1e..a4b704a 100644
--- a/common/rfb/VNCSConnectionST.cxx
+++ b/common/rfb/VNCSConnectionST.cxx
@@ -1074,7 +1074,7 @@
encoding = cp.currentEncoding();
if (!encoders[encoding])
- encoders[encoding] = Encoder::createEncoder(encoding, writer());
+ encoders[encoding] = Encoder::createEncoder(encoding, this);
encoders[encoding]->setCompressLevel(cp.compressLevel);
encoders[encoding]->setQualityLevel(cp.qualityLevel);