+static void red_clear_surface_glz_drawables(RedWorker *worker, int surface_id)
+{
+ RingItem *ring_item;
+
+ if (!worker->display_channel) {
+ return;
+ }
+
+
pthread_mutex_lock(&worker->display_channel->glz_drawables_inst_to_free_lock);
+
+ while ((ring_item =
ring_get_head(&worker->surfaces[surface_id].glz_drawables))) {
+ RedGlzDrawable *now = SPICE_CONTAINEROF(ring_item, RedGlzDrawable,
surface_link);
+ red_display_free_glz_drawable(worker->display_channel, now);
+ }
+
+
pthread_mutex_unlock(&worker->display_channel->glz_drawables_inst_to_free_lock);
+}
+
Wrong lock, you should use glz_dict->encode_lock.
Yonit.
_______________________________________________
Spice-devel mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/spice-devel