2014-11-17 10:30:54

by Marcin Kraglak

[permalink] [raw]
Subject: [PATCH] android/gatt: Set Descriptor handle and Include Service handle

Set newly created attribute's handle in notification data.
---
android/gatt.c | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/android/gatt.c b/android/gatt.c
index 086bb94..199243d 100644
--- a/android/gatt.c
+++ b/android/gatt.c
@@ -4322,6 +4322,7 @@ static void handle_server_add_included_service(const void *buf, uint16_t len)
goto failed;
}

+ ev.incl_srvc_handle = gatt_db_attribute_get_handle(service);
status = HAL_STATUS_SUCCESS;
failed:
ev.srvc_handle = cmd->service_handle;
@@ -5056,10 +5057,13 @@ static void handle_server_add_descriptor(const void *buf, uint16_t len)
attrib = gatt_db_service_add_descriptor(attrib, &uuid, permissions,
read_cb, write_cb,
INT_TO_PTR(app_id));
- if (!attrib)
+ if (!attrib) {
status = HAL_STATUS_FAILED;
- else
- status = HAL_STATUS_SUCCESS;
+ goto failed;
+ }
+
+ ev.descr_handle = gatt_db_attribute_get_handle(attrib);
+ status = HAL_STATUS_SUCCESS;

failed:
ev.server_if = app_id;
--
1.9.3



2014-11-18 22:20:18

by Szymon Janc

[permalink] [raw]
Subject: Re: [PATCH] android/gatt: Set Descriptor handle and Include Service handle

Hi Marcin,

On Monday 17 of November 2014 11:30:54 Marcin Kraglak wrote:
> Set newly created attribute's handle in notification data.
> ---
> android/gatt.c | 10 +++++++---
> 1 file changed, 7 insertions(+), 3 deletions(-)
>
> diff --git a/android/gatt.c b/android/gatt.c
> index 086bb94..199243d 100644
> --- a/android/gatt.c
> +++ b/android/gatt.c
> @@ -4322,6 +4322,7 @@ static void handle_server_add_included_service(const
> void *buf, uint16_t len) goto failed;
> }
>
> + ev.incl_srvc_handle = gatt_db_attribute_get_handle(service);
> status = HAL_STATUS_SUCCESS;
> failed:
> ev.srvc_handle = cmd->service_handle;
> @@ -5056,10 +5057,13 @@ static void handle_server_add_descriptor(const void
> *buf, uint16_t len) attrib = gatt_db_service_add_descriptor(attrib, &uuid,
> permissions, read_cb, write_cb,
> INT_TO_PTR(app_id));
> - if (!attrib)
> + if (!attrib) {
> status = HAL_STATUS_FAILED;
> - else
> - status = HAL_STATUS_SUCCESS;
> + goto failed;
> + }
> +
> + ev.descr_handle = gatt_db_attribute_get_handle(attrib);
> + status = HAL_STATUS_SUCCESS;
>
> failed:
> ev.server_if = app_id;

Applied, thanks.

--
BR
Szymon Janc