[pulseaudio-discuss] [PATCH 2/2] bluetooth: Fix crash in pa_bluetooth_discovery_get_device_by_address()

jprvita at gmail.com jprvita at gmail.com
Wed Nov 20 13:21:36 PST 2013


From: João Paulo Rechi Vita <jprvita at gmail.com>

We need to check if the device information is valid first, so we don't
pass invalid strings to pa_streq().
---
 src/modules/bluetooth/bluez5-util.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/modules/bluetooth/bluez5-util.c b/src/modules/bluetooth/bluez5-util.c
index d2893c0..c7fb6ae 100644
--- a/src/modules/bluetooth/bluez5-util.c
+++ b/src/modules/bluetooth/bluez5-util.c
@@ -395,8 +395,8 @@ pa_bluetooth_device* pa_bluetooth_discovery_get_device_by_address(pa_bluetooth_d
     pa_assert(local);
 
     while ((d = pa_hashmap_iterate(y->devices, &state, NULL)))
-        if (pa_streq(d->address, remote) && pa_streq(d->adapter->address, local))
-            return d->device_info_valid == 1 ? d : NULL;
+        if (d->device_info_valid == 1 && pa_streq(d->address, remote) && pa_streq(d->adapter->address, local))
+            return d;
 
     return NULL;
 }
-- 
1.8.3.1



More information about the pulseaudio-discuss mailing list