summaryrefslogtreecommitdiff
path: root/sql/item_func.cc
diff options
context:
space:
mode:
authorunknown <jimw@mysql.com>2005-03-01 15:25:18 -0800
committerunknown <jimw@mysql.com>2005-03-01 15:25:18 -0800
commit3db5a97430695ded3d67d6ff218f7bbfc490a8f9 (patch)
treeb07a1a73b3c2e9a452dcb4f03dfb4b0911a3e514 /sql/item_func.cc
parent84381afbe355e3d1ae8b6ecb0ea46bbfb23b5792 (diff)
parent997c8f62b2b014ae583884eac56d97d82597437b (diff)
downloadmariadb-git-3db5a97430695ded3d67d6ff218f7bbfc490a8f9.tar.gz
Merge mysql.com:/home/jimw/my/mysql-5.0-8678
into mysql.com:/home/jimw/my/mysql-5.0-clean sql/item_func.cc: Auto merged
Diffstat (limited to 'sql/item_func.cc')
-rw-r--r--sql/item_func.cc45
1 files changed, 25 insertions, 20 deletions
diff --git a/sql/item_func.cc b/sql/item_func.cc
index 19228108bfc..f7c397a0395 100644
--- a/sql/item_func.cc
+++ b/sql/item_func.cc
@@ -2365,26 +2365,6 @@ longlong Item_func_bit_count::val_int()
#ifdef HAVE_DLOPEN
-udf_handler::~udf_handler()
-{
- if (!not_original)
- {
- if (initialized)
- {
- if (u_d->func_deinit != NULL)
- {
- void (*deinit)(UDF_INIT *) = (void (*)(UDF_INIT*))
- u_d->func_deinit;
- (*deinit)(&initid);
- }
- free_udf(u_d);
- }
- if (buffers) // Because of bug in ecc
- delete [] buffers;
- }
-}
-
-
bool
udf_handler::fix_fields(THD *thd, TABLE_LIST *tables, Item_result_field *func,
uint arg_count, Item **arguments)
@@ -2774,6 +2754,31 @@ String *Item_func_udf_str::val_str(String *str)
return res;
}
+
+/*
+ This has to come last in the udf_handler methods, or the compiler for IBM
+ AIX fails to compile with debugging enabled. (Yes, really.)
+ */
+
+udf_handler::~udf_handler()
+{
+ if (!not_original)
+ {
+ if (initialized)
+ {
+ if (u_d->func_deinit != NULL)
+ {
+ void (*deinit)(UDF_INIT *) = (void (*)(UDF_INIT*))
+ u_d->func_deinit;
+ (*deinit)(&initid);
+ }
+ free_udf(u_d);
+ }
+ if (buffers) // Because of bug in ecc
+ delete [] buffers;
+ }
+}
+
#else
bool udf_handler::get_arguments() { return 0; }
#endif /* HAVE_DLOPEN */