diff --git a/server/dcc.cpp b/server/dcc.cpp index 61017492..4276a084 100644 --- a/server/dcc.cpp +++ b/server/dcc.cpp @@ -165,7 +165,7 @@ void dcc_create_surface(DisplayChannelClient *dcc, RedSurface *surface) display = DCC_TO_DC(dcc); flags = is_primary_surface(display, surface) ? SPICE_SURFACE_FLAGS_PRIMARY : 0; - + flags |= is_stream(display) ? SPICE_SURFACE_FLAGS_STREAMING_MODE : 0; /* don't send redundant create surface commands to client */ if (display->get_during_target_migrate() || dcc->priv->surface_client_created[surface_id]) { diff --git a/server/display-channel-private.h b/server/display-channel-private.h index e0693f54..81c70dcf 100644 --- a/server/display-channel-private.h +++ b/server/display-channel-private.h @@ -338,6 +338,10 @@ static inline bool is_primary_surface(DisplayChannel *display, const RedSurface return surface->id == 0; } +static inline bool is_stream(DisplayChannel *display) { + return display->priv->gl_draw_stream; +} + static inline void region_add_clip_rects(QRegion *rgn, SpiceClipRects *data) { int i;