diff --git a/audio/gateway.c b/audio/gateway.c
index 77a8cb0..8603038 100644
--- a/audio/gateway.c
+++ b/audio/gateway.c
static int get_records(struct audio_device *device)
{
uuid_t uuid;
+ int err;
- change_state(device, GATEWAY_STATE_CONNECTING);
sdp_uuid16_create(&uuid, HANDSFREE_AGW_SVCLASS_ID);
- return bt_search_service(&device->src, &device->dst, &uuid,
- get_record_cb, device, NULL);
+
+ err = bt_search_service(&device->src, &device->dst, &uuid,
+ get_record_cb, device, NULL);
+ if (err < 0)
+ return err;
+
+ change_state(device, GATEWAY_STATE_CONNECTING);
+
+ return 0;
}
static DBusMessage *ag_connect(DBusConnection *conn, DBusMessage *msg,