vnc: send extended desktop resize on update requests
authorGerd Hoffmann <kraxel@redhat.com>
Mon, 25 Jan 2021 10:40:41 +0000 (11:40 +0100)
committerGerd Hoffmann <kraxel@redhat.com>
Wed, 27 Jan 2021 08:47:07 +0000 (09:47 +0100)
Unlike other pseudo-encodings these don't break gtk-vnc
because older versions don't suport the extended desktop
resize extension in the first place.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Tested-by: Laszlo Ersek <lersek@redhat.com>
Message-Id: <20210125104041.495274-3-kraxel@redhat.com>

ui/vnc.c

index 2622f82a5a9f7ec5469b3f4734a1917cafdf1854..16bb3be770b290863445c728b9283836b627ac38 100644 (file)
--- a/ui/vnc.c
+++ b/ui/vnc.c
@@ -2046,6 +2046,9 @@ static void framebuffer_update_request(VncState *vs, int incremental,
     } else {
         vs->update = VNC_STATE_UPDATE_FORCE;
         vnc_set_area_dirty(vs->dirty, vs->vd, x, y, w, h);
+        if (vnc_has_feature(vs, VNC_FEATURE_RESIZE_EXT)) {
+            vnc_desktop_resize_ext(vs, 0);
+        }
     }
 }