deviceprovider: set the bus to non-flushing before calling klass->start
authorMathieu Duponchelle <mathieu@centricular.com>
Mon, 9 Sep 2019 22:28:45 +0000 (00:28 +0200)
committerMathieu Duponchelle <mduponchelle1@gmail.com>
Mon, 16 Sep 2019 23:56:44 +0000 (23:56 +0000)
commita9e2776074042fb1efc99f7d53d4e122d2a44f62
tree0f2037703258914150a52650dceac1b76976448f
parent9cf764b2ec5d03c89e7c13f3244210c3d9141d7b
deviceprovider: set the bus to non-flushing before calling klass->start

Not posting DEVICE_ADDED messages while a device provider is being
started makes things awkward for applications, as they have to call
get_devices() after starting the monitor.

This requires redundant code on the application side, and as far as
I understand also could cause race conditions, when a device gets
added between the calls to gst_device_monitor_start() and
gst_device_monitor_get_devices(), causing the application to "see"
the same device twice.
gst/gstdeviceprovider.c