gchar *key;
GVariant *val;
gsize len = 0;
+ gboolean is_bredr_dev = FALSE;
+
if (!item)
return FALSE;
DBG("+");
while (g_variant_iter_loop(&iter, "{sv}", &key, &val)) {
if (strcasecmp(key, "Address") == 0) {
-
char * address = NULL;
address = g_variant_dup_string(val, &len);
uint8_t bdaddr[6];
ev->num_props++;
DBG("Device address [%s] property Num [%d]", address, ev->num_props);
g_free(address);
+ } else if (strcasecmp(key, "AddressType") == 0) {
+ char *addresstype = g_variant_dup_string(val, &len);
+ if (addresstype)
+ DBG("AddressType [%s]", addresstype);
+ g_free(addresstype);
} else if (strcasecmp(key, "Class") == 0) {
unsigned int class = g_variant_get_uint32(val);
size += __bt_insert_hal_properties(buf + size, HAL_PROP_DEVICE_CLASS,
sizeof(unsigned int), &class);
ev->num_props++;
DBG("Device class [%d] Property num [%d]", class, ev->num_props);
+ is_bredr_dev = TRUE;
} else if (strcasecmp(key, "name") == 0) {
char *name = g_variant_dup_string(val, &len);
if (name) {
}
DBG("-");
- if (size > 1) {
+ if (size > 1 && is_bredr_dev) {
DBG("Send Device found event to HAL user, Num Prop [%d] total size [%zd]", ev->num_props, size);
event_cb(HAL_EV_DEVICE_FOUND, (void*) buf, size);
}