browse_request_free(req, shutdown);
}
+static gboolean att_connect(gpointer user_data);
+
static void att_connect_cb(GIOChannel *io, GError *gerr, gpointer user_data)
{
struct btd_device *device = user_data;
device->browse = NULL;
browse_request_free(req, TRUE);
- }
+ } else if (device->auto_connect)
+ g_idle_add(att_connect, device);
return;
}
DBG("%s auto connect: %d", addr, enable);
device->auto_connect = enable;
+
+ if (device->attrib) {
+ DBG("Already connected");
+ return;
+ }
+
+ g_idle_add(att_connect, device);
}
void device_set_type(struct btd_device *device, device_type_t type)