mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-06-04 22:48:54 +00:00
sys/: Explicitly create our custom buffer classes at a thread-safe location as well, since g_type_class_ref() doesn't...
Original commit message from CVS: * sys/ximage/ximagesink.c: (gst_ximagesink_get_type): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_type): Explicitly create our custom buffer classes at a thread-safe location as well, since g_type_class_ref() doesn't seem to be entirely thread-safe either (#365501; also see #349410).
This commit is contained in:
parent
cc156bc97c
commit
a74bb753c3
3 changed files with 16 additions and 6 deletions
|
@ -1,3 +1,11 @@
|
|||
2006-10-27 Tim-Philipp Müller <tim at centricular dot net>
|
||||
|
||||
* sys/ximage/ximagesink.c: (gst_ximagesink_get_type):
|
||||
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_type):
|
||||
Explicitly create our custom buffer classes at a thread-safe
|
||||
location as well, since g_type_class_ref() doesn't seem to be
|
||||
entirely thread-safe either (#365501; also see #349410).
|
||||
|
||||
2006-10-26 Tim-Philipp Müller <tim at centricular dot net>
|
||||
|
||||
* gst-libs/gst/riff/riff-read.c: (freeform_string_to_utf8),
|
||||
|
|
|
@ -2101,9 +2101,10 @@ gst_ximagesink_get_type (void)
|
|||
g_type_add_interface_static (ximagesink_type, GST_TYPE_X_OVERLAY,
|
||||
&overlay_info);
|
||||
|
||||
/* register type in a more safe place instead of at runtime since the
|
||||
* type registration is not threadsafe. */
|
||||
gst_ximage_buffer_get_type ();
|
||||
/* register type and create class in a more safe place instead of at
|
||||
* runtime since the type registration and class creation is not
|
||||
* threadsafe. */
|
||||
g_type_class_ref (gst_ximage_buffer_get_type ());
|
||||
}
|
||||
|
||||
return ximagesink_type;
|
||||
|
|
|
@ -2794,9 +2794,10 @@ gst_xvimagesink_get_type (void)
|
|||
g_type_add_interface_static (xvimagesink_type, GST_TYPE_COLOR_BALANCE,
|
||||
&colorbalance_info);
|
||||
|
||||
/* make sure type is registered and not at runtime as this is not
|
||||
* threadsafe */
|
||||
gst_xvimage_buffer_get_type ();
|
||||
/* register type and create class in a more safe place instead of at
|
||||
* runtime since the type registration and class creation is not
|
||||
* threadsafe. */
|
||||
g_type_class_ref (gst_xvimage_buffer_get_type ());
|
||||
}
|
||||
|
||||
return xvimagesink_type;
|
||||
|
|
Loading…
Reference in a new issue