diff options
author | Michael Widenius <monty@askmonty.org> | 2010-08-07 15:27:23 +0300 |
---|---|---|
committer | Michael Widenius <monty@askmonty.org> | 2010-08-07 15:27:23 +0300 |
commit | 165eb1186cb6f8e9a9595ffd7c172c54a6dfb6dc (patch) | |
tree | 1af90462d850c2e61b2b5770bf8621d890095a5a /strings | |
parent | 569c37163e0e7afb8f9da37f5d67a2b52e610146 (diff) | |
download | mariadb-git-165eb1186cb6f8e9a9595ffd7c172c54a6dfb6dc.tar.gz |
Added extra argument to longlong2str() to make it have same prototype is int2str()
Changed to use longlong10_to_str() instead of longlong2str() when base is 10 or -10 as former is much faster than later
Changed my_vsnprintf() to use longlong2str instead of int2str() to get rid of warnings and to get support for long pointers even when long is 32 bit.
client/mysqltest.cc:
longlong2str() -> longlong10_to_str()
include/m_string.h:
Added extra argument to longlong2str() to make it have same prototype is int2str()
mysys/charset.c:
Fixed compiler warning
mysys/mf_soundex.c:
Fixed compiler warning
mysys/my_getopt.c:
longlong2str() -> longlong10_to_str()
sql/create_options.cc:
Fixed compiler warning
sql/item_strfunc.cc:
Added extra argument to longlong2str
sql/opt_range.cc:
longlong2str() -> longlong10_to_str()
sql/partition_info.cc:
longlong2str() -> longlong10_to_str()
sql/slave.cc:
longlong2str() -> longlong10_to_str()
sql/sql_bitmap.h:
Added extra argument to longlong2str
sql/sql_partition.cc:
Added extra argument to longlong2str
sql/sql_select.cc:
longlong2str() -> longlong10_to_str()
sql/sql_show.cc:
Added extra argument to longlong2str
storage/innodb_plugin/handler/ha_innodb.cc:
Update to new parameters for longlong2str()
storage/maria/ma_dbug.c:
longlong2str() -> longlong10_to_str()
storage/maria/maria_chk.c:
Added extra argument to longlong2str
storage/myisam/mi_dbug.c:
longlong2str() -> longlong10_to_str()
storage/myisam/myisamchk.c:
Added extra argument to longlong2str
storage/xtradb/handler/ha_innodb.cc:
Update to new parameters for longlong2str()
strings/longlong2str.c:
Added extra argument to longlong2str() to make it have same prototype is int2str()
strings/my_vsnprintf.c:
Changed my_vsnprintf() to use longlong2str instead of int2str() to get rid of warnings and to get support for long pointers even when long is 32 bit.
Added cast to get rid of compiler warnings
Diffstat (limited to 'strings')
-rw-r--r-- | strings/longlong2str.c | 7 | ||||
-rw-r--r-- | strings/my_vsnprintf.c | 14 |
2 files changed, 11 insertions, 10 deletions
diff --git a/strings/longlong2str.c b/strings/longlong2str.c index d7de5bb0f7c..61b45b731c4 100644 --- a/strings/longlong2str.c +++ b/strings/longlong2str.c @@ -46,11 +46,12 @@ This assumes that longlong multiplication is faster than longlong division. */ -char *longlong2str(longlong val,char *dst,int radix) +char *longlong2str(longlong val,char *dst,int radix, int upcase) { char buffer[65]; register char *p; long long_val; + const char *dig_vec= upcase ? _dig_vec_upper : _dig_vec_lower; ulonglong uval= (ulonglong) val; if (radix < 0) @@ -80,14 +81,14 @@ char *longlong2str(longlong val,char *dst,int radix) { ulonglong quo= uval/(uint) radix; uint rem= (uint) (uval- quo* (uint) radix); - *--p = _dig_vec_upper[rem]; + *--p = _dig_vec[rem]; uval= quo; } long_val= (long) uval; while (long_val != 0) { long quo= long_val/radix; - *--p = _dig_vec_upper[(uchar) (long_val - quo*radix)]; + *--p = _dig_vec[(uchar) (long_val - quo*radix)]; long_val= quo; } while ((*dst++ = *p++) != 0) ; diff --git a/strings/my_vsnprintf.c b/strings/my_vsnprintf.c index 79267461c47..fbe4c1bdf6f 100644 --- a/strings/my_vsnprintf.c +++ b/strings/my_vsnprintf.c @@ -235,19 +235,19 @@ static char *process_int_arg(char *to, char *end, size_t length, store_start= buff; if (arg_type == 'd') - store_end= int10_to_str(par, store_start, -10); + store_end= longlong10_to_str(par, store_start, -10); else if (arg_type == 'u') - store_end= int10_to_str(par, store_start, 10); + store_end= longlong10_to_str(par, store_start, 10); else if (arg_type == 'p') { store_start[0]= '0'; store_start[1]= 'x'; - store_end= int2str(par, store_start + 2, 16, 0); + store_end= longlong2str(par, store_start + 2, 16, 0); } else { DBUG_ASSERT(arg_type == 'X' || arg_type =='x'); - store_end= int2str(par, store_start, 16, (arg_type == 'X')); + store_end= longlong2str(par, store_start, 16, (arg_type == 'X')); } if ((res_length= (size_t) (store_end - store_start)) > to_length) @@ -430,9 +430,9 @@ start: { /* Integer parameter */ longlong larg; - length= ((print_arr[i].flags & LENGTH_ARG) ? - args_arr[print_arr[i].length].longlong_arg : - (longlong) print_arr[i].length); + length= (int) ((print_arr[i].flags & LENGTH_ARG) ? + args_arr[print_arr[i].length].longlong_arg : + (longlong) print_arr[i].length); if (args_arr[print_arr[i].arg_idx].have_longlong) larg = args_arr[print_arr[i].arg_idx].longlong_arg; |