Otherwise command would be rejected e.g. when setting discoverable at bluetoothd startup. --- plugins/mgmtops.c | 9 ++++++--- 1 files changed, 6 insertions(+), 3 deletions(-) diff --git a/plugins/mgmtops.c b/plugins/mgmtops.c index 89355ad..afed165 100644 --- a/plugins/mgmtops.c +++ b/plugins/mgmtops.c @@ -317,12 +317,15 @@ static void update_settings(struct btd_adapter *adapter, uint32_t settings) info = &controllers[index]; - if (on_mode == MODE_DISCOVERABLE && !mgmt_discoverable(settings)) + if (on_mode == MODE_DISCOVERABLE && !mgmt_discoverable(settings)) { + if(!mgmt_connectable(settings)) + mgmt_set_connectable(index, TRUE); mgmt_set_discoverable(index, TRUE, discoverable_timeout); - else if (on_mode == MODE_CONNECTABLE && !mgmt_connectable(settings)) + } else if (on_mode == MODE_CONNECTABLE && !mgmt_connectable(settings)) { mgmt_set_connectable(index, TRUE); - else if (mgmt_powered(settings)) + } else if (mgmt_powered(settings)) { adapter_mode_changed(adapter, create_mode(settings)); + } if (mgmt_pairable(settings) != pairable) mgmt_set_pairable(index, pairable); -- 1.7.9.1 -- To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html