From 3344d1a728d37f0fb3e82a6a945eee0c780eb734 Mon Sep 17 00:00:00 2001
From: Chernov Dmitriy <cd_work@mail.ru>
Date: 周三, 02 3月 2016 21:29:32 +0800
Subject: [PATCH] Fix potential memory leak. #73

---
 libscpi/src/utils.c |    9 ++++++---
 1 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/libscpi/src/utils.c b/libscpi/src/utils.c
index b2b9e03..01562c7 100644
--- a/libscpi/src/utils.c
+++ b/libscpi/src/utils.c
@@ -768,11 +768,14 @@
 		return NULL;
 	}
 	
-	size_t len=strlen(s);
-	if( ( len == 0 ) || ( len > heap->count ) ){
+	if( *s == '\0' ){
 		return NULL;
 	}
-	len++;	// additional '\0' at end
+	
+	size_t len=strlen(s) + 1;	// additional '\0' at end
+	if( len > heap->count ) {
+		return NULL;
+	}
 	char * ptrs = s;
 	char * head = &heap->data[heap->wr];
 	size_t rem = heap->size - (&heap->data[heap->wr]-heap->data);

--
Gitblit v1.9.1