mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-20 15:27:07 +00:00
device, elementfactory: relax floating requirement
Using g_assert() is a bit too extreme, as it will abort the whole program unless G_DISABLE_ASSERTS is true. Switch to g_critical()
This commit is contained in:
parent
9861ad2e12
commit
e79def14a5
2 changed files with 12 additions and 7 deletions
|
@ -212,11 +212,12 @@ gst_device_create_element (GstDevice * device, const gchar * name)
|
|||
if (klass->create_element)
|
||||
element = klass->create_element (device, name);
|
||||
|
||||
if (element) {
|
||||
if (element && !g_object_is_floating ((GObject *) element)) {
|
||||
/* The reference we receive here should be floating, but we can't force
|
||||
* it at our level. Simply assert to make the issue obvious to bindings
|
||||
* it at our level. Simply raise a critical to make the issue obvious to bindings
|
||||
* developers */
|
||||
g_assert (g_object_is_floating ((GObject *) element));
|
||||
g_critical ("The created element should be floating, "
|
||||
"this is probably caused by faulty bindings");
|
||||
}
|
||||
|
||||
return element;
|
||||
|
|
|
@ -386,10 +386,14 @@ gst_element_factory_create (GstElementFactory * factory, const gchar * name)
|
|||
/* This ref will never be dropped as the class is never destroyed */
|
||||
GST_OBJECT_FLAG_SET (factory, GST_OBJECT_FLAG_MAY_BE_LEAKED);
|
||||
|
||||
/* The reference we receive here should be floating, but we can't force
|
||||
* it at our level. Simply assert to make the issue obvious to bindings
|
||||
* developers */
|
||||
g_assert (g_object_is_floating ((GObject *) element));
|
||||
if (!g_object_is_floating ((GObject *) element)) {
|
||||
/* The reference we receive here should be floating, but we can't force
|
||||
* it at our level. Simply raise a critical to make the issue obvious to bindings
|
||||
* users / developers */
|
||||
g_critical ("The created element should be floating, "
|
||||
"this is probably caused by faulty bindings");
|
||||
}
|
||||
|
||||
|
||||
GST_DEBUG ("created element \"%s\"", GST_OBJECT_NAME (factory));
|
||||
|
||||
|
|
Loading…
Reference in a new issue