if ((E_Hwc_Window_Queue *)data != window_buffer->queue) return;
+ if (window_buffer->queue)
+ wl_list_remove(&window_buffer->queue_destroy_listener.link);
+
window_buffer->queue = NULL;
}
if ((E_Hwc_Window_Queue *)data != hwc_window->queue) return;
+ if (hwc_window->queue)
+ wl_list_remove(&hwc_window->queue_destroy_listener.link);
+
hwc_window->queue = NULL;
hwc_window->constraints &= ~TDM_HWC_WIN_CONSTRAINT_BUFFER_QUEUE;
}
return EINA_FALSE;
}
+ if (hwc_window->queue)
+ wl_list_remove(&hwc_window->queue_destroy_listener.link);
+
wl_signal_add(&queue->destroy_signal, &hwc_window->queue_destroy_listener);
hwc_window->queue_destroy_listener.notify = _e_hwc_window_cb_queue_destroy;
hwc_window->queue = queue;
if (hwc_window->queue)
{
e_hwc_window_queue_user_unset(hwc_window->queue, hwc_window);
+
+ wl_list_remove(&hwc_window->queue_destroy_listener.link);
hwc_window->queue = NULL;
}