summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMichael Janssen <jamuraa@chromium.org>2015-04-03 15:02:12 -0700
committerLuiz Augusto von Dentz <luiz.von.dentz@intel.com>2015-04-07 18:04:25 +0300
commit8232c1a035b1b4078213143312ebecf55328e4a1 (patch)
treede965b12bd787eb5f93099e3f70e8ffa3fb80332 /src
parentc68f5c6b1590357b46aca3bf30a02851c64da860 (diff)
downloadbluez-8232c1a035b1b4078213143312ebecf55328e4a1.tar.gz
core: Only start Advertising Manager when experimental
Check the experimental flag, there is no value in starting the Advertising Manager when there is no method for advertising. This also makes startup quieter when experimental is not set.
Diffstat (limited to 'src')
-rw-r--r--src/adapter.c18
1 files changed, 8 insertions, 10 deletions
diff --git a/src/adapter.c b/src/adapter.c
index ccc67fcce..7ffd302a2 100644
--- a/src/adapter.c
+++ b/src/adapter.c
@@ -7334,16 +7334,14 @@ static int adapter_register(struct btd_adapter *adapter)
return -EINVAL;
}
- /* Don't start advertising managers on non-LE controllers. */
- if (adapter->supported_settings & MGMT_SETTING_LE) {
- adapter->adv_manager = btd_advertising_manager_new(adapter);
-
- /* LEAdvertisingManager1 is experimental so optional */
- if (!adapter->adv_manager)
- error("Failed to register LEAdvertisingManager1 "
- "interface for adapter");
- } else {
- info("Not starting LEAdvertisingManager, LE not supported");
+ if (g_dbus_get_flags() & G_DBUS_FLAG_ENABLE_EXPERIMENTAL) {
+ /* Don't start advertising managers on non-LE controllers. */
+ if (adapter->supported_settings & MGMT_SETTING_LE) {
+ adapter->adv_manager =
+ btd_advertising_manager_new(adapter);
+ } else {
+ info("LEAdvertisingManager skipped, LE unavailable");
+ }
}
db = btd_gatt_database_get_db(adapter->database);