@@ -833,9 +833,7 @@ static void vnc_dpy_switch(DisplayChangeListener *dcl,
QTAILQ_FOREACH(vs, &vd->clients, next) {
vnc_colordepth(vs);
vnc_desktop_resize(vs, false);
- if (vs->vd->cursor) {
- vnc_cursor_define(vs);
- }
+ vnc_cursor_define(vs);
memset(vs->dirty, 0x00, sizeof(vs->dirty));
vnc_set_area_dirty(vs->dirty, vd, 0, 0,
vnc_width(vd),
@@ -969,6 +967,10 @@ static int vnc_cursor_define(VncState *vs)
QEMUCursor *c = vs->vd->cursor;
int isize;
+ if (!vs->vd->cursor) {
+ return -1;
+ }
+
if (vnc_has_feature(vs, VNC_FEATURE_ALPHA_CURSOR)) {
vnc_lock_output(vs);
vnc_write_u8(vs, VNC_MSG_SERVER_FRAMEBUFFER_UPDATE);
@@ -2181,9 +2183,7 @@ static void set_encodings(VncState *vs, int32_t *encodings, size_t n_encodings)
vnc_desktop_resize(vs, true);
check_pointer_type_change(&vs->mouse_mode_notifier, NULL);
vnc_led_state_change(vs);
- if (vs->vd->cursor) {
- vnc_cursor_define(vs);
- }
+ vnc_cursor_define(vs);
}
static void set_pixel_conversion(VncState *vs)
Move the check whenever a cursor exists into the vnc_cursor_define() function so callers don't have to do it. Suggested-by: Marc-André Lureau <marcandre.lureau@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> --- ui/vnc.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-)