mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-12-22 08:56:52 -05:00
bluetooth: Fail to load driver if discovery module is not loaded
For quite some time now the device driver module doesn't work well without the discovery module, so for the BlueZ 5 support we'll prevent the device driver module to be loaded if the discovery module is not loaded.
This commit is contained in:
parent
774c73309d
commit
dc4be17e07
3 changed files with 7 additions and 4 deletions
|
|
@ -1514,9 +1514,6 @@ pa_bluetooth_discovery* pa_bluetooth_discovery_get(pa_core *c) {
|
||||||
DBusConnection *conn;
|
DBusConnection *conn;
|
||||||
unsigned i;
|
unsigned i;
|
||||||
|
|
||||||
if ((y = pa_shared_get(c, "bluetooth-discovery")))
|
|
||||||
return pa_bluetooth_discovery_ref(y);
|
|
||||||
|
|
||||||
y = pa_xnew0(pa_bluetooth_discovery, 1);
|
y = pa_xnew0(pa_bluetooth_discovery, 1);
|
||||||
PA_REFCNT_INIT(y);
|
PA_REFCNT_INIT(y);
|
||||||
y->core = c;
|
y->core = c;
|
||||||
|
|
|
||||||
|
|
@ -39,6 +39,7 @@
|
||||||
#include <pulsecore/modargs.h>
|
#include <pulsecore/modargs.h>
|
||||||
#include <pulsecore/poll.h>
|
#include <pulsecore/poll.h>
|
||||||
#include <pulsecore/rtpoll.h>
|
#include <pulsecore/rtpoll.h>
|
||||||
|
#include <pulsecore/shared.h>
|
||||||
#include <pulsecore/socket-util.h>
|
#include <pulsecore/socket-util.h>
|
||||||
#include <pulsecore/thread.h>
|
#include <pulsecore/thread.h>
|
||||||
#include <pulsecore/thread-mq.h>
|
#include <pulsecore/thread-mq.h>
|
||||||
|
|
@ -1792,8 +1793,12 @@ int pa__init(pa_module* m) {
|
||||||
goto fail;
|
goto fail;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!(u->discovery = pa_bluetooth_discovery_get(m->core)))
|
if ((u->discovery = pa_shared_get(u->core, "bluetooth-discovery")))
|
||||||
|
pa_bluetooth_discovery_ref(u->discovery);
|
||||||
|
else {
|
||||||
|
pa_log_error("module-bluez5-discover doesn't seem to be loaded, refusing to load module-bluez5-device");
|
||||||
goto fail;
|
goto fail;
|
||||||
|
}
|
||||||
|
|
||||||
if (!(u->device = pa_bluetooth_discovery_get_device_by_path(u->discovery, path))) {
|
if (!(u->device = pa_bluetooth_discovery_get_device_by_path(u->discovery, path))) {
|
||||||
pa_log_error("%s is unknown", path);
|
pa_log_error("%s is unknown", path);
|
||||||
|
|
|
||||||
|
|
@ -27,6 +27,7 @@
|
||||||
#include <pulsecore/core-util.h>
|
#include <pulsecore/core-util.h>
|
||||||
#include <pulsecore/macro.h>
|
#include <pulsecore/macro.h>
|
||||||
#include <pulsecore/module.h>
|
#include <pulsecore/module.h>
|
||||||
|
#include <pulsecore/shared.h>
|
||||||
|
|
||||||
#include "bluez5-util.h"
|
#include "bluez5-util.h"
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue