From d018476757e503b614d56f942132dd7c3801c1bb Mon Sep 17 00:00:00 2001 From: "ol.beketov" Date: Thu, 4 May 2017 16:42:08 +0300 Subject: [PATCH] [IOT-2092] Check null pointer before dereference Change-Id: Ib8032c41e8910087be5c5b30fee9a7b4a3992f01 Signed-off-by: ol.beketov Reviewed-on: https://gerrit.iotivity.org/gerrit/19623 Tested-by: jenkins-iotivity Reviewed-by: Dan Mihai Reviewed-by: Andrii Shtompel Reviewed-by: Randeep Singh --- plugins/zigbee_wrapper/telegesis_wrapper/src/telegesis_socket.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/plugins/zigbee_wrapper/telegesis_wrapper/src/telegesis_socket.c b/plugins/zigbee_wrapper/telegesis_wrapper/src/telegesis_socket.c index 877cf06..a42926d 100644 --- a/plugins/zigbee_wrapper/telegesis_wrapper/src/telegesis_socket.c +++ b/plugins/zigbee_wrapper/telegesis_wrapper/src/telegesis_socket.c @@ -475,11 +475,10 @@ TWResultCode TWRetrieveEUI(PIPlugin_Zigbee * plugin, TWSock * twSock) entry = readEntry(twSock->fd); if(!entry) { - result = TWReleaseMutex(&twSock->mutex); - if(result != TW_RESULT_OK) - { - goto exit; - } + TWReleaseMutex(&twSock->mutex); + // in case entry is NULL, further processing will cause crash or UB + result = TW_RESULT_ERROR; + goto exit; } twSock->eui = (char *) OICMalloc(strlen(entry->lines[0].line)+1); if(!twSock->eui) -- 2.7.4