From 027a4610a720be05e0fe0b9fd74ecceabf46c9d4 Mon Sep 17 00:00:00 2001 From: Jukka Taimisto Date: Sat, 17 Jan 2015 20:46:05 +0200 Subject: [PATCH] profiles/gap: Handle error or no device name Fixes segmentation fault when reading value of device name characteristic returns error or no data. --- profiles/gap/gas.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/profiles/gap/gas.c b/profiles/gap/gas.c index 7d81592ee..762e352ac 100644 --- a/profiles/gap/gas.c +++ b/profiles/gap/gas.c @@ -101,7 +101,18 @@ static void read_device_name_cb(bool success, uint8_t att_ecode, void *user_data) { struct gas *gas = user_data; - char *name = name2utf8(value, length); + char *name; + + if (!success) { + DBG("Reading device name failed with ATT errror: %u", + att_ecode); + return; + } + + if (!length) + return; + + name = name2utf8(value, length); DBG("GAP Device Name: %s", name); -- 2.47.3