summaryrefslogtreecommitdiff
path: root/sql/sql_udf.cc
diff options
context:
space:
mode:
Diffstat (limited to 'sql/sql_udf.cc')
-rw-r--r--sql/sql_udf.cc7
1 files changed, 5 insertions, 2 deletions
diff --git a/sql/sql_udf.cc b/sql/sql_udf.cc
index 05df069d69a..19df1a85565 100644
--- a/sql/sql_udf.cc
+++ b/sql/sql_udf.cc
@@ -526,8 +526,11 @@ int mysql_drop_function(THD *thd,const LEX_STRING *udf_name)
tables.real_name= tables.alias= (char*) "func";
if (!(table = open_ltable(thd,&tables,TL_WRITE)))
goto err;
- if (!table->file->index_read_idx(table->record[0],0,(byte*) udf_name->str,
- (uint) udf_name->length,
+ table->field[0]->store(udf_name.str, udf_name.length, system_charset_info);
+ table->file->extra(HA_EXTRA_RETRIEVE_ALL_COLS);
+ if (!table->file->index_read_idx(table->record[0], 0,
+ (byte*) table->field[0]->ptr,
+ table->key_info[0].key_length
HA_READ_KEY_EXACT))
{
int error;