summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjani@ua141d10.elisa.omakaista.fi <>2004-02-10 13:36:21 +0000
committerjani@ua141d10.elisa.omakaista.fi <>2004-02-10 13:36:21 +0000
commit0c6a0b9a3118948efeedefd036d2994982babd08 (patch)
tree89a7401f9408af94b0ae129c61a176cd031fe8a3
parent1ce9ae54299d8d49e15b4bd5ccac7bf6c9508400 (diff)
downloadmariadb-git-0c6a0b9a3118948efeedefd036d2994982babd08.tar.gz
Wrong type of an argument was sent to my_printf_error(), which
caused UDF functions to segmenation fault when they tried to print an error during wrong usage.
-rw-r--r--sql/item_func.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/sql/item_func.cc b/sql/item_func.cc
index b1378784f92..34a61ba0353 100644
--- a/sql/item_func.cc
+++ b/sql/item_func.cc
@@ -1552,7 +1552,7 @@ udf_handler::fix_fields(THD *thd, TABLE_LIST *tables, Item_result_field *func,
if ((error=(uchar) init(&initid, &f_args, thd->net.last_error)))
{
my_printf_error(ER_CANT_INITIALIZE_UDF,ER(ER_CANT_INITIALIZE_UDF),MYF(0),
- u_d->name,thd->net.last_error);
+ u_d->name.str, thd->net.last_error);
free_udf(u_d);
DBUG_RETURN(1);
}
@@ -1565,7 +1565,7 @@ udf_handler::fix_fields(THD *thd, TABLE_LIST *tables, Item_result_field *func,
if (error)
{
my_printf_error(ER_CANT_INITIALIZE_UDF,ER(ER_CANT_INITIALIZE_UDF),MYF(0),
- u_d->name, ER(ER_UNKNOWN_ERROR));
+ u_d->name.str, ER(ER_UNKNOWN_ERROR));
DBUG_RETURN(1);
}
DBUG_RETURN(0);