/** Destroys a cursor theme object * * \param theme The cursor theme to be destroyed */ WL_EXPORT void wl_cursor_theme_destroy(struct wl_cursor_theme *theme) { unsigned int i; for (i = 0; i < theme->cursor_count; i++) wl_cursor_destroy(theme->cursors[i]); shm_pool_destroy(theme->pool); free(theme->name); free(theme->cursors); free(theme); }
static void gst_wayland_sink_finalize (GObject * object) { GstWaylandSink *sink = GST_WAYLAND_SINK (object); GST_DEBUG_OBJECT (sink, "Finalizing the sink.."); if (sink->window) destroy_window (sink->window); if (sink->display) destroy_display (sink->display); if (sink->shm_pool) shm_pool_destroy (sink->shm_pool); g_mutex_clear (&sink->wayland_lock); G_OBJECT_CLASS (parent_class)->finalize (object); }