diff --git a/gst/gstdeviceprovider.c b/gst/gstdeviceprovider.c index 8ad737cd41..995c2ff8ad 100644 --- a/gst/gstdeviceprovider.c +++ b/gst/gstdeviceprovider.c @@ -543,6 +543,9 @@ gst_device_provider_device_add (GstDeviceProvider * provider, { GstMessage *message; + g_return_if_fail (GST_IS_DEVICE_PROVIDER (provider)); + g_return_if_fail (GST_IS_DEVICE (device)); + if (!gst_object_set_parent (GST_OBJECT (device), GST_OBJECT (provider))) { GST_WARNING_OBJECT (provider, "Could not parent device %p to provider," " it already has a parent", device); @@ -579,6 +582,9 @@ gst_device_provider_device_remove (GstDeviceProvider * provider, GstMessage *message; GList *item; + g_return_if_fail (GST_IS_DEVICE_PROVIDER (provider)); + g_return_if_fail (GST_IS_DEVICE (device)); + GST_OBJECT_LOCK (provider); item = g_list_find (provider->devices, device); if (item) { diff --git a/gst/gstdeviceprovider.h b/gst/gstdeviceprovider.h index 6370afc657..3982f3b89c 100644 --- a/gst/gstdeviceprovider.h +++ b/gst/gstdeviceprovider.h @@ -111,31 +111,31 @@ gboolean gst_device_provider_can_monitor (GstDeviceProvider * provider); GstBus * gst_device_provider_get_bus (GstDeviceProvider * provider); void gst_device_provider_device_add (GstDeviceProvider * provider, - GstDevice * device); + GstDevice * device); void gst_device_provider_device_remove (GstDeviceProvider * provider, GstDevice * device); /* device provider class meta data */ -void gst_device_provider_class_set_metadata (GstDeviceProviderClass *klass, +void gst_device_provider_class_set_metadata (GstDeviceProviderClass *klass, const gchar *longname, const gchar *classification, const gchar *description, const gchar *author); -void gst_device_provider_class_set_static_metadata (GstDeviceProviderClass *klass, +void gst_device_provider_class_set_static_metadata (GstDeviceProviderClass *klass, const gchar *longname, const gchar *classification, const gchar *description, const gchar *author); -void gst_device_provider_class_add_metadata (GstDeviceProviderClass * klass, +void gst_device_provider_class_add_metadata (GstDeviceProviderClass * klass, const gchar * key, const gchar * value); -void gst_device_provider_class_add_static_metadata (GstDeviceProviderClass * klass, +void gst_device_provider_class_add_static_metadata (GstDeviceProviderClass * klass, const gchar * key, const gchar * value); -const gchar * gst_device_provider_class_get_metadata (GstDeviceProviderClass * klass, - const gchar * key); +const gchar * gst_device_provider_class_get_metadata (GstDeviceProviderClass * klass, + const gchar * key); /* factory management */ -GstDeviceProviderFactory * gst_device_provider_get_factory (GstDeviceProvider * provider); +GstDeviceProviderFactory * gst_device_provider_get_factory (GstDeviceProvider * provider); G_END_DECLS