From 8232c1a035b1b4078213143312ebecf55328e4a1 Mon Sep 17 00:00:00 2001 From: Michael Janssen Date: Fri, 3 Apr 2015 15:02:12 -0700 Subject: [PATCH] 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. --- src/adapter.c | 18 ++++++++---------- 1 file 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); -- 2.47.3