diff options
| author | Lennart Poettering <lennart@poettering.net> | 2009-10-31 02:05:54 +0100 | 
|---|---|---|
| committer | Lennart Poettering <lennart@poettering.net> | 2009-10-31 02:05:54 +0100 | 
| commit | 2dc37e1214f20aab528ae680e9a85fc8ea143313 (patch) | |
| tree | 55c0d0f8e378e5e6fe203b250a816ea4d2d75ccb | |
| parent | b83d7a27cee4a436e4d692a9bba1b426090f4d12 (diff) | |
bluetooth: do not hand out access to devices that are not fully configured yet
| -rw-r--r-- | src/modules/bluetooth/bluetooth-util.c | 10 | 
1 files changed, 8 insertions, 2 deletions
diff --git a/src/modules/bluetooth/bluetooth-util.c b/src/modules/bluetooth/bluetooth-util.c index f8c5b778..47d62005 100644 --- a/src/modules/bluetooth/bluetooth-util.c +++ b/src/modules/bluetooth/bluetooth-util.c @@ -723,12 +723,14 @@ const pa_bluetooth_device* pa_bluetooth_discovery_get_by_address(pa_bluetooth_di      while ((d = pa_hashmap_iterate(y->devices, &state, NULL)))          if (pa_streq(d->address, address)) -            return d; +            return device_is_audio(d) ? d : NULL;      return NULL;  }  const pa_bluetooth_device* pa_bluetooth_discovery_get_by_path(pa_bluetooth_discovery *y, const char* path) { +    pa_bluetooth_device *d; +      pa_assert(y);      pa_assert(PA_REFCNT_VALUE(y) > 0);      pa_assert(path); @@ -736,7 +738,11 @@ const pa_bluetooth_device* pa_bluetooth_discovery_get_by_path(pa_bluetooth_disco      if (!pa_hook_is_firing(&y->hook))          pa_bluetooth_discovery_sync(y); -    return pa_hashmap_get(y->devices, path); +    if ((d = pa_hashmap_get(y->devices, path))) +        if (device_is_audio(d)) +            return d; + +    return NULL;  }  static int setup_dbus(pa_bluetooth_discovery *y) {  | 
