summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbell@sanja.is.com.ua <>2003-02-14 14:00:19 +0200
committerbell@sanja.is.com.ua <>2003-02-14 14:00:19 +0200
commitd7b5238b0215d8034000007fa57db6e1526ebf49 (patch)
tree1d311bc0fcb1c2da317d4b006b7cc93e04323600
parent7d7a248d9e8992cbf0cbca89d61d06c9ba065549 (diff)
downloadmariadb-git-d7b5238b0215d8034000007fa57db6e1526ebf49.tar.gz
fixed memory leak in procedure with subselects
-rw-r--r--sql/sql_analyse.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/sql/sql_analyse.cc b/sql/sql_analyse.cc
index a424d877919..192ef247177 100644
--- a/sql/sql_analyse.cc
+++ b/sql/sql_analyse.cc
@@ -89,6 +89,7 @@ proc_analyse_init(THD *thd, ORDER *param, select_result *result,
if ((*param->item)->type() != Item::INT_ITEM ||
(*param->item)->val() < 0)
{
+ delete pc;
my_error(ER_WRONG_PARAMETERS_TO_PROCEDURE, MYF(0), proc_name);
DBUG_RETURN(0);
}
@@ -103,6 +104,7 @@ proc_analyse_init(THD *thd, ORDER *param, select_result *result,
if ((*param->item)->type() != Item::INT_ITEM ||
(*param->item)->val() < 0)
{
+ delete pc;
my_error(ER_WRONG_PARAMETERS_TO_PROCEDURE, MYF(0), proc_name);
DBUG_RETURN(0);
}
@@ -111,6 +113,7 @@ proc_analyse_init(THD *thd, ORDER *param, select_result *result,
else if ((*param->item)->type() != Item::INT_ITEM ||
(*param->item)->val() < 0)
{
+ delete pc;
my_error(ER_WRONG_PARAMETERS_TO_PROCEDURE, MYF(0), proc_name);
DBUG_RETURN(0);
}