Even though it is not used, it's better to make it safe (or remove it).
---
server/red_worker.c | 12 +++++++-----
1 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/server/red_worker.c b/server/red_worker.c
index 72e5ea5..1f239c5 100644
--- a/server/red_worker.c
+++ b/server/red_worker.c
@@ -1157,12 +1157,14 @@ static inline uint64_t red_now(void);
(next) = (link) ? ring_next(&drawable->glz_ring, (link)) : NULL,\
glz = (link) ? SPICE_CONTAINEROF((link), RedGlzDrawable,
drawable_link) : NULL)
-#define CCC_FOREACH(link, ccc, channel) \
+#define CCC_FOREACH_SAFE(link, next, ccc, channel) \
for (link = ring_get_head(&(channel)->clients),\
- ccc = SPICE_CONTAINEROF(link, CommonChannelClient,
base.channel_link);\
- (link); \
- (link) = ring_next(&(channel)->clients, link),\
- ccc = SPICE_CONTAINEROF(link, CommonChannelClient,
base.channel_link))
+ (next) = (link) ? ring_next(&(channel)->clients, (link)) : NULL, \
+ ccc = SPICE_CONTAINEROF(link, CommonChannelClient,
base.channel_link);\
+ (link); \
+ (link) = (next), \
+ (next) = (link) ? ring_next(&(channel)->clients, (link)) : NULL, \
+ ccc = SPICE_CONTAINEROF(link, CommonChannelClient,
base.channel_link))
#define DCC_TO_WORKER(dcc) \
(SPICE_CONTAINEROF((dcc)->common.base.channel, CommonChannel,
base)->worker)
--
1.7.1
_______________________________________________
Spice-devel mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/spice-devel