From: Pierre Ossman Date: Tue, 9 Jun 2015 14:10:39 +0000 (+0200) Subject: Avoid losing updates on partial requests X-Git-Tag: v1.4.90~3 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=b64dbf29aeaaa41eed47ea48e3ccfa9ae563c6f2;p=tigervnc.git Avoid losing updates on partial requests A request may be for only part of the frame buffer, meaning we cannot discard all changes just because we've send out an update. There might still be modified areas remaining that haven't been requested yet. --- diff --git a/common/rfb/VNCSConnectionST.cxx b/common/rfb/VNCSConnectionST.cxx index f45ee7e0..c63e6b62 100644 --- a/common/rfb/VNCSConnectionST.cxx +++ b/common/rfb/VNCSConnectionST.cxx @@ -1056,8 +1056,11 @@ void VNCSConnectionST::writeFramebufferUpdate() writeRTTPing(); + // The request might be for just part of the screen, so we cannot + // just clear the entire update tracker. + updates.subtract(requested); + requested.clear(); - updates.clear(); } out: