---
server/red_worker.c | 16 ++++++++++++++--
1 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/server/red_worker.c b/server/red_worker.c
index 25738a3..77b731a 100644
--- a/server/red_worker.c
+++ b/server/red_worker.c
@@ -2499,7 +2499,7 @@ static void red_streams_update_clip(RedRender *render,
Drawable *drawable)
}
}
-static inline unsigned int red_get_streams_timout(RedRender *render)
+static inline unsigned int red_render_get_streams_timout(RedRender *render)
{
unsigned int timout = -1;
Ring *ring = &render->streams;
@@ -2522,6 +2522,18 @@ static inline unsigned int
red_get_streams_timout(RedRender *render)
return timout;
}
+static inline unsigned int red_get_streams_timout(RedWorker *worker)
+{
+ RedRender *render;
+ RingItem *link;
+ unsigned int timeout = ~0;
+
+ RENDER_FOREACH(link, render, worker) {
+ timeout = MIN(timeout, red_render_get_streams_timout(render));
+ }
+ return timeout;
+}
+
static inline void red_handle_streams_timout(RedRender *render)
{
Ring *ring = &render->streams;
@@ -10794,7 +10806,7 @@ void *red_worker_main(void *arg)
struct epoll_event *event;
struct epoll_event *end;
- worker.epoll_timeout = MIN(red_get_streams_timout(&worker.render),
worker.epoll_timeout);
+ worker.epoll_timeout = MIN(red_get_streams_timout(&worker),
worker.epoll_timeout);
num_events = epoll_wait(worker.epoll, events, MAX_EPOLL_SOURCES,
worker.epoll_timeout);
RENDER_FOREACH(link, render, &worker) {
red_handle_streams_timout(render);
--
1.7.5.1
_______________________________________________
Spice-devel mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/spice-devel