diff options
-rw-r--r-- | server/red_worker.c | 2 | ||||
-rw-r--r-- | server/stream.c | 4 | ||||
-rw-r--r-- | server/stream.h | 3 |
3 files changed, 5 insertions, 4 deletions
diff --git a/server/red_worker.c b/server/red_worker.c index faa50ed6..44627f06 100644 --- a/server/red_worker.c +++ b/server/red_worker.c @@ -4267,7 +4267,7 @@ static void red_display_marshall_stream_end(RedChannelClient *rcc, red_channel_client_init_send_data(rcc, SPICE_MSG_DISPLAY_STREAM_DESTROY, NULL); destroy.id = get_stream_id(DCC_TO_DC(dcc), agent->stream); - stream_agent_stop(dcc, agent); + stream_agent_stop(agent); spice_marshall_msg_display_stream_destroy(base_marshaller, &destroy); } diff --git a/server/stream.c b/server/stream.c index a2acd3a8..0d4a20ab 100644 --- a/server/stream.c +++ b/server/stream.c @@ -675,8 +675,10 @@ void dcc_create_stream(DisplayChannelClient *dcc, Stream *stream) #endif } -void stream_agent_stop(DisplayChannelClient *dcc, StreamAgent *agent) +void stream_agent_stop(StreamAgent *agent) { + DisplayChannelClient *dcc = agent->dcc; + dcc_update_streams_max_latency(dcc, agent); if (agent->mjpeg_encoder) { mjpeg_encoder_destroy(agent->mjpeg_encoder); diff --git a/server/stream.h b/server/stream.h index 3627b0f5..65de2f44 100644 --- a/server/stream.h +++ b/server/stream.h @@ -152,8 +152,7 @@ void stream_maintenance (DisplayChan void stream_agent_unref (DisplayChannel *display, StreamAgent *agent); void stream_agent_stats_print (StreamAgent *agent); -void stream_agent_stop (DisplayChannelClient *dcc, - StreamAgent *agent); +void stream_agent_stop (StreamAgent *agent); void attach_stream(DisplayChannel *display, Drawable *drawable, Stream *stream); void detach_stream(DisplayChannel *display, Stream *stream, int detach_sized); |