[Spice-devel] [PATCH 05/15] dc: dcc used is always a value from current worker_ring_item

Frediano Ziglio fziglio at redhat.com
Mon May 16 16:40:30 UTC 2016


Signed-off-by: Frediano Ziglio <fziglio at redhat.com>
---
 server/display-channel.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/server/display-channel.c b/server/display-channel.c
index 31ec5d0..c5768de 100644
--- a/server/display-channel.c
+++ b/server/display-channel.c
@@ -509,21 +509,19 @@ static int current_add_equal(DisplayChannel *display, DrawItem *item, TreeItem *
             dpi_ring_item = ring_get_head(&other_drawable->pipes);
             /* dpi contains a sublist of dcc's, ordered the same */
             while (worker_ring_item) {
-                dcc = SPICE_CONTAINEROF(worker_ring_item, DisplayChannelClient,
-                                        common.base.channel_link);
                 dpi = SPICE_CONTAINEROF(dpi_ring_item, RedDrawablePipeItem, base);
                 for (;;) {
                     if (!worker_ring_item) {
                         goto out_loop;
                     }
+                    dcc = SPICE_CONTAINEROF(worker_ring_item, DisplayChannelClient,
+                                            common.base.channel_link);
                     if (dpi && dcc == dpi->dcc) {
                         break;
                     }
                     dcc_prepend_drawable(dcc, drawable);
                     worker_ring_item = ring_next(&RED_CHANNEL(display)->clients,
                                                  worker_ring_item);
-                    dcc = SPICE_CONTAINEROF(worker_ring_item, DisplayChannelClient,
-                                            common.base.channel_link);
                 }
 
                 if (dpi_ring_item) {
-- 
2.7.4



More information about the Spice-devel mailing list