mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-13 21:01:14 +00:00
522f5f7231
Original commit message from CVS: Added testcase for failing bin iterate function due to glib thread-unsafeness.
33 lines
491 B
C
33 lines
491 B
C
#include <unistd.h>
|
|
#include <gst/gst.h>
|
|
|
|
|
|
|
|
static gpointer
|
|
iterate_bin (GstBin * bin)
|
|
{
|
|
while (TRUE) {
|
|
gst_bin_iterate (bin);
|
|
}
|
|
return NULL;
|
|
}
|
|
|
|
int
|
|
main (int argc, char **argv)
|
|
{
|
|
gint i;
|
|
GstElement *bin;
|
|
|
|
gst_init (&argc, &argv);
|
|
|
|
for (i = 0; i < 100; i++) {
|
|
bin = gst_element_factory_make ("bin", "bin");
|
|
gst_scheduler_factory_make (NULL, GST_ELEMENT (bin));
|
|
|
|
g_thread_create ((GThreadFunc) iterate_bin, bin, TRUE, NULL);
|
|
}
|
|
|
|
sleep (20000);
|
|
|
|
return 0;
|
|
}
|