summaryrefslogtreecommitdiff
path: root/sql/item_sum.h
diff options
context:
space:
mode:
authorunknown <monty@mysql.com>2004-05-07 01:43:17 +0300
committerunknown <monty@mysql.com>2004-05-07 01:43:17 +0300
commitf3544f3c5dd137e125a980c151e53ab71b23aba5 (patch)
treef2717f686b72c32ff82659eaf22da3a53b8deb1a /sql/item_sum.h
parentffdf46a58ac73ce0862f1cf632e4254170ed6116 (diff)
downloadmariadb-git-f3544f3c5dd137e125a980c151e53ab71b23aba5.tar.gz
Portability fixes
Change strtoll -> my_strtoll10() Fixed bug in my_strntoul() and my_strntol() where we got different values on 32 and 64 bit systems (Bug #3472) configure.in: Fixed problem on IRIX64 (One can't have AC_MSG_RESULT on same row as AC_DEFINE extra/my_print_defaults.c: Fixed wrong definition for 'verbose' include/my_global.h: Portability fix (IRIX64) libmysql/client_settings.h: Remove compiler warnings libmysql/libmysql.c: Remove compiler warnings mysql-test/r/func_str.result: Updated results mysql-test/r/key_cache.result: Updated results to not depend on key_blocks_unused mysql-test/t/func_str.test: More test of long overflow mysql-test/t/key_cache.test: Updated results to not depend on key_blocks_unused sql/item.cc: Portability fix (don't use strtoll()) sql/item.h: Portability fix (don't use strtoll()) sql/item_sum.h: Portability fix (don't use strtoll()) sql/item_timefunc.cc: Fixed compiler warning strings/ctype-simple.c: Fixed bug in my_strntoul() and my_strntol() where we got different values on 32 and 64 bit systems strings/ctype-ucs2.c: Fixed bug in my_strntoul() and my_strntol() where we got different values on 32 and 64 bit systems
Diffstat (limited to 'sql/item_sum.h')
-rw-r--r--sql/item_sum.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/sql/item_sum.h b/sql/item_sum.h
index d7753303f55..4cded41a9f6 100644
--- a/sql/item_sum.h
+++ b/sql/item_sum.h
@@ -735,8 +735,12 @@ class Item_func_group_concat : public Item_sum
}
longlong val_int()
{
- String *res; res=val_str(&str_value);
- return res ? strtoll(res->c_ptr(),(char**) 0,10) : (longlong) 0;
+ String *res;
+ char *end_ptr;
+ int error;
+ res= val_str(&str_value);
+ end_ptr= (char*) res->ptr()+ res->length();
+ return res ? my_strtoll10(res->ptr(), &end_ptr, &error) : (longlong) 0;
}
String* val_str(String* str);
Item *copy_or_same(THD* thd);