summaryrefslogtreecommitdiff
path: root/sql/item_func.cc
diff options
context:
space:
mode:
authorunknown <monty@mishka.local>2005-07-19 19:25:05 +0300
committerunknown <monty@mishka.local>2005-07-19 19:25:05 +0300
commit3a31f7b91f9aea5c6bab45157c3a661252720174 (patch)
tree98d1121d654b01cf2306965326d1355704fc1218 /sql/item_func.cc
parentddc3586495aa82f310b0e5c2127b77f28c711c27 (diff)
downloadmariadb-git-3a31f7b91f9aea5c6bab45157c3a661252720174.tar.gz
Simple fixes during review of new code
include/my_global.h: Added floatget() to read unaligned flaot mysql-test/r/select.result: Added test for found_rows() mysql-test/t/select.test: Added test for found_rows() sql/des_key_file.cc: Moved initalization of LOCK_des_key_file to mysqld to make simpler code and avoid theoretical race condition sql/field_conv.cc: Added optimizzed varsion of do_cut_string (for simple character sets) sql/item_func.cc: Simplify code (and ensure DBUG_ENTER is excuted before main code) sql/item_strfunc.cc: Safe calculation of max_length This was needed as max_length can now be 1<<32-1 (after konstantins recent patch to fix BLOB_LENGTH) Remove init_des_key_file() as this is not initialized in mysqld.cc sql/item_timefunc.cc: Safe calculation of max_length This was needed as max_length can now be 1<<32-1 (after konstantins recent patch to fix BLOB_LENGTH) sql/log_event.cc: Simplify code sql/mysql_priv.h: Moved initalization of LOCK_des_key_file to mysqld to make simpler code and avoid theoretical race condition sql/mysqld.cc: Moved initalization of LOCK_des_key_file to mysqld to make simpler code and avoid theoretical race condition Revert wrong patch of calling close_connection() in first close_connections() loop. (Bug #7403) Instead we now print a warning for closed connections only if mysqld is sarted with --warnings Added comments to make the close_connections() logic clearer sql/sql_prepare.cc: Use floatget() and doubleget() to protect against unaligned data sql/sql_select.cc: Fixed some cases unlikely cases where found_rows() would return wrong for queries that would return 0 or 1 rows
Diffstat (limited to 'sql/item_func.cc')
-rw-r--r--sql/item_func.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/sql/item_func.cc b/sql/item_func.cc
index c8f1d209d26..44917eb48e4 100644
--- a/sql/item_func.cc
+++ b/sql/item_func.cc
@@ -3045,14 +3045,15 @@ Item_func_get_system_var(sys_var *var_arg, enum_var_type var_type_arg,
bool
Item_func_get_system_var::fix_fields(THD *thd, TABLE_LIST *tables, Item **ref)
{
- Item *item= var->item(thd, var_type, &component);
+ Item *item;
DBUG_ENTER("Item_func_get_system_var::fix_fields");
+
/*
Evaluate the system variable and substitute the result (a basic constant)
instead of this item. If the variable can not be evaluated,
the error is reported in sys_var::item().
*/
- if (item == 0)
+ if (!(item= var->item(thd, var_type, &component)))
DBUG_RETURN(1); // Impossible
item->set_name(name, 0, system_charset_info); // don't allocate a new name
thd->change_item_tree(ref, item);