From d93af80e37274656bca792a673eb0b66141e62a1 Mon Sep 17 00:00:00 2001 From: Luiz Augusto von Dentz Date: Thu, 8 Sep 2016 10:52:42 +0300 Subject: [PATCH] core/service: Fix setting wrong state after calling accept The accept calback may transit the state to connected on the call itself since most of the time it is just a matter of selecting the attributes in case of GATT profiles. --- src/service.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/service.c b/src/service.c index f387fc406..20a41d052 100644 --- a/src/service.c +++ b/src/service.c @@ -209,7 +209,8 @@ int service_accept(struct btd_service *service) return err; done: - change_state(service, BTD_SERVICE_STATE_CONNECTING, 0); + if (service->state == BTD_SERVICE_STATE_DISCONNECTED) + change_state(service, BTD_SERVICE_STATE_CONNECTING, 0); return 0; } -- 2.47.3