From 13c1aec06caee0e5c60c9add2251eb2f9fa8c402 Mon Sep 17 00:00:00 2001 From: Luiz Augusto von Dentz Date: Fri, 7 Feb 2014 15:42:51 +0200 Subject: core/service: Return required version in btd_service_get_version This makes btd_service_get_version check both local and remote version and return the required version that the service should operate. --- src/service.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/service.c b/src/service.c index 506c74165..d22351da5 100644 --- a/src/service.c +++ b/src/service.c @@ -327,6 +327,9 @@ uint16_t btd_service_get_version(const struct btd_service *service) sdp_profile_desc_t *desc; uint16_t version; + if (!service->profile->version) + return 0; + rec = btd_device_get_record(service->device, service->profile->remote_uuid); if (rec == NULL) @@ -339,7 +342,7 @@ uint16_t btd_service_get_version(const struct btd_service *service) version = desc->version; sdp_list_free(list, free); - return version; + return MIN(version, service->profile->version); } unsigned int btd_service_add_state_cb(btd_service_state_cb cb, void *user_data) -- cgit v1.2.1