diff options
author | Jonas Dreßler <verdre@v0yd.nl> | 2022-02-18 11:14:58 +0100 |
---|---|---|
committer | Bastien Nocera <hadess@hadess.net> | 2022-02-23 12:28:47 +0000 |
commit | 65becb0c2a019a683af3f3a2fefa9391e2cfdcef (patch) | |
tree | dd1880011ffb244d8007120bfa82bfea38683e92 /lib | |
parent | 9fb72c027f9119e6992771e4ce1f0a33c80d3e7c (diff) | |
download | gnome-bluetooth-65becb0c2a019a683af3f3a2fefa9391e2cfdcef.tar.gz |
lib: Don't enable/disable discovery again if already enabled
We have a private property to keep track of this already, let's use it
and bail out of _bluetooth_client_set_default_adapter_discovering() if
we're already discovering.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/bluetooth-client.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/bluetooth-client.c b/lib/bluetooth-client.c index 54ecc40d..4705cdb5 100644 --- a/lib/bluetooth-client.c +++ b/lib/bluetooth-client.c @@ -1084,6 +1084,9 @@ _bluetooth_client_set_default_adapter_discovering (BluetoothClient *client, g_autoptr(GDBusProxy) adapter = NULL; GVariantBuilder builder; + if (client->discovery_started == discovering) + return; + adapter = _bluetooth_client_get_default_adapter (client); if (adapter == NULL) { g_debug ("%s discovery requested, but no default adapter", @@ -1091,6 +1094,8 @@ _bluetooth_client_set_default_adapter_discovering (BluetoothClient *client, return; } + client->discovery_started = discovering; + if (discovering) { g_variant_builder_init (&builder, G_VARIANT_TYPE_VARDICT); g_variant_builder_add (&builder, "{sv}", @@ -1102,7 +1107,6 @@ _bluetooth_client_set_default_adapter_discovering (BluetoothClient *client, client); } - client->discovery_started = discovering; if (discovering) { g_debug ("Starting discovery on %s", g_dbus_proxy_get_object_path (adapter)); adapter1_call_start_discovery (ADAPTER1 (adapter), |