From 8cfea996e7b38a655e7e0d214f9894dede02ea4d Mon Sep 17 00:00:00 2001 From: Markus Makela Date: Thu, 6 Nov 2014 20:04:18 +0200 Subject: [PATCH] Fixed an unassigned pointer causing memory corruption. --- .../modules/routing/readwritesplit/readwritesplit.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/server/modules/routing/readwritesplit/readwritesplit.c b/server/modules/routing/readwritesplit/readwritesplit.c index e7f003d04..569f9d148 100644 --- a/server/modules/routing/readwritesplit/readwritesplit.c +++ b/server/modules/routing/readwritesplit/readwritesplit.c @@ -1406,7 +1406,7 @@ void check_drop_tmp_table( { int tsize = 0, klen = 0,i; - char** tbl; + char** tbl = NULL; char *hkey,*dbname; MYSQL_session* data; @@ -1447,7 +1447,9 @@ void check_drop_tmp_table( free(tbl[i]); free(hkey); } - free(tbl); + if(tbl != NULL){ + free(tbl); + } } } @@ -1468,7 +1470,7 @@ skygw_query_type_t is_read_tmp_table( bool target_tmp_table = false; int tsize = 0, klen = 0,i; - char** tbl; + char** tbl = NULL; char *hkey,*dbname; MYSQL_session* data; @@ -1529,7 +1531,10 @@ skygw_query_type_t is_read_tmp_table( { free(tbl[i]); } - free(tbl); + + if(tbl != NULL){ + free(tbl); + } return qtype; }