diff options
author | unknown <monty@mishka.local> | 2004-10-20 01:28:42 +0300 |
---|---|---|
committer | unknown <monty@mishka.local> | 2004-10-20 01:28:42 +0300 |
commit | 4736d0fe9963742e2788960d60da7f0f2dd593e9 (patch) | |
tree | 1919e7f3a6a68e36dbbcf1dd8b6cd8729a975e36 /sql/field.cc | |
parent | 46b10a307fcaf3449f2bcf3b989feb0e1c53e7b6 (diff) | |
download | mariadb-git-4736d0fe9963742e2788960d60da7f0f2dd593e9.tar.gz |
Review of all code pushed since last review
Simple optimzations and cleanups
Removed compiler warnings and fixed portability issues
Added client functions 'mysql_embedded()' to allow client to check if we are using embedded server
Fixes for purify
client/mysqlimport.c:
Remove not used variable
client/mysqltest.c:
Remove usage of MAXPATHLEN (all MySQL code uses FN_REFLEN)
Simplified code
Remove usage of sprintf("%llu") as this is not portable
include/mysql.h:
Added mysql_embedded() to be able to easily check if we are using the embedded server
innobase/srv/srv0start.c:
Don't use memcmp() when using purify (to avoid false warnings)
libmysql/libmysql.c:
Added mysql_embedded() to be able to easily check if we are using the embedded server
libmysql/libmysql.def:
Added mysql_embedded() to be able to easily check if we are using the embedded server
myisam/myisam_ftdump.c:
Remove compiler warning
myisam/myisamchk.c:
Remove compiler warning
myisam/rt_test.c:
#ifdef not used code
mysys/hash.c:
Remove compiler warning (from last push)
mysys/my_gethwaddr.c:
Remove compiler warning
ndb/src/ndbapi/ndberror.c:
#ifdef not used code
regex/regcomp.c:
Remove not used code
regex/regcomp.ih:
Remove not used code (to remove compiler warnings)
sql-common/client.c:
Remove compiler warnings
sql/field.cc:
Simple optimization
sql/ha_innodb.cc:
Rename mysql_embedded -> mysqld_embedded
sql/item.cc:
Fix comments
Move variables first on block
Remove else after return
Simple optimizations
(no logic changes)
sql/item_cmpfunc.cc:
Added comment
sql/mysql_priv.h:
Rename mysql_embedded -> mysqld_embedded
sql/mysqld.cc:
Rename mysql_embedded -> mysqld_embedded
sql/sql_acl.cc:
Added comments
simple optimization
Fixed 'very unlikely' bug when doing REVOKE ALL PRIVILEGES
sql/sql_select.cc:
More comments
Simple optimization
sql/sql_show.cc:
Simple changes to make similar code similar
More comments
sql/sql_string.cc:
Trivial optimization and better code layout
strings/Makefile.am:
Change xml.c to use bcmp to avoid warnings from purify
strings/xml.c:
Change xml.c to use bcmp to avoid warnings from purify
tests/client_test.c:
Remove usage of MAXPATHLEN (all MySQL code uses FN_REFLEN)
Diffstat (limited to 'sql/field.cc')
-rw-r--r-- | sql/field.cc | 25 |
1 files changed, 7 insertions, 18 deletions
diff --git a/sql/field.cc b/sql/field.cc index 3dc1375dff3..e7e8ec736ef 100644 --- a/sql/field.cc +++ b/sql/field.cc @@ -304,14 +304,11 @@ bool Field::field_cast_compatible(Field::field_cast_enum type) { DBUG_ASSERT(type != FIELD_CAST_STOP); Field::field_cast_enum *array= field_cast_array[field_cast_type()]; - uint i= 0; - Field::field_cast_enum tp; - do + while (*array != FIELD_CAST_STOP) { - tp= array[i++]; - if (tp == type) + if (*(array++) == type) return 1; - } while (tp != FIELD_CAST_STOP); + } return 0; } @@ -4438,13 +4435,9 @@ char *Field_string::pack(char *to, const char *from, uint max_length) while (end > from && end[-1] == ' ') end--; length= (end-from); + *to++= (char) (uchar) length; if (field_length > 255) - { - int2store(to, length); - to+= 2; - } - else - *to++= (char) (uchar) length; + *to++= (char) (uchar) (length >> 8); memcpy(to, from, (int) length); return to+length; } @@ -4459,13 +4452,9 @@ char *Field_string::pack_key(char *to, const char *from, uint max_length) set_if_smaller(length, char_length); while (length && from[length-1] == ' ') length--; + *to++= (char) (uchar) length; if (field_length > 255) - { - int2store(to, length); - to+= 2; - } - else - *to++= (char) (uchar) length; + *to++= (char) (uchar) (length >> 8); memcpy(to, from, length); return to+length; } |