Loading .bzrignore +4 −0 Original line number Diff line number Diff line Loading @@ -1056,3 +1056,7 @@ include/mysqld_ername.h include/mysqld_error.h include/sql_state.h support-files/ndb-config-2-node.ini client/decimal.c client/my_decimal.cc client/my_decimal.h libmysqld/my_decimal.cc client/Makefile.am +7 −2 Original line number Diff line number Diff line Loading @@ -34,7 +34,8 @@ mysqltest_SOURCES= mysqltest.c $(top_srcdir)/mysys/my_getsystime.c mysqltest_LDADD = $(top_builddir)/regex/libregex.a $(LDADD) mysqlbinlog_SOURCES = mysqlbinlog.cc $(top_srcdir)/mysys/mf_tempdir.c mysqlmanagerc_SOURCES = mysqlmanagerc.c sql_src=log_event.h mysql_priv.h log_event.cc sql_src=log_event.h mysql_priv.h log_event.cc my_decimal.h my_decimal.cc strings_src=decimal.c # Fix for mit-threads DEFS = -DUNDEF_THREADS_HACK Loading @@ -43,6 +44,10 @@ link_sources: for f in $(sql_src) ; do \ rm -f $(srcdir)/$$f; \ @LN_CP_F@ $(top_srcdir)/sql/$$f $(srcdir)/$$f; \ done; \ for f in $(strings_src) ; do \ rm -f $(srcdir)/$$f; \ @LN_CP_F@ $(top_srcdir)/strings/$$f $(srcdir)/$$f; \ done; # Don't update the files from bitkeeper Loading client/mysqlbinlog.cc +6 −0 Original line number Diff line number Diff line Loading @@ -1280,8 +1280,14 @@ int main(int argc, char** argv) */ #ifdef __WIN__ #include "my_decimal.h" #include "decimal.c" #include "my_decimal.cpp" #include "log_event.cpp" #else #include "my_decimal.h" #include "decimal.c" #include "my_decimal.cc" #include "log_event.cc" #endif Loading include/decimal.h +7 −2 Original line number Diff line number Diff line Loading @@ -26,7 +26,9 @@ typedef struct st_decimal { decimal_digit *buf; } decimal; int decimal2string(decimal *from, char *to, int *to_len); int decimal2string(decimal *from, char *to, int *to_len, int fixed_precision, int fixed_decimals, char filler); int string2decimal(char *from, decimal *to, char **end); int string2decimal_fixed(char *from, decimal *to, char **end); int decimal2ulonglong(decimal *from, ulonglong *to); Loading @@ -35,6 +37,7 @@ int decimal2longlong(decimal *from, longlong *to); int longlong2decimal(longlong from, decimal *to); int decimal2double(decimal *from, double *to); int double2decimal(double from, decimal *to); void decimal_optimize_fraction(decimal *from); int decimal2bin(decimal *from, char *to, int precision, int scale); int bin2decimal(char *from, decimal *to, int precision, int scale); Loading @@ -50,6 +53,7 @@ int decimal_div(decimal *from1, decimal *from2, decimal *to, int scale_incr); int decimal_mod(decimal *from1, decimal *from2, decimal *to); int decimal_round(decimal *from, decimal *to, int new_scale, decimal_round_mode mode); int decimal_is_zero(decimal *from); void max_decimal(int precision, int frac, decimal *to); /* set a decimal to zero */ Loading @@ -65,7 +69,8 @@ int decimal_is_zero(decimal *from); of the decimal (including decimal dot, possible sign and \0) */ #define decimal_string_size(dec) ((dec)->intg + (dec)->frac + ((dec)->frac > 0) + 2) #define decimal_string_size(dec) (((dec)->intg ? (dec)->intg : 1) + \ (dec)->frac + ((dec)->frac > 0) + 2) /* negate a decimal */ #define decimal_neg(dec) do { (dec)->sign^=1; } while(0) Loading include/mysql_com.h +4 −1 Original line number Diff line number Diff line Loading @@ -211,6 +211,7 @@ enum enum_field_types { MYSQL_TYPE_DECIMAL, MYSQL_TYPE_TINY, MYSQL_TYPE_DATETIME, MYSQL_TYPE_YEAR, MYSQL_TYPE_NEWDATE, MYSQL_TYPE_VARCHAR, MYSQL_TYPE_BIT, MYSQL_TYPE_NEWDECIMAL=246, MYSQL_TYPE_ENUM=247, MYSQL_TYPE_SET=248, MYSQL_TYPE_TINY_BLOB=249, Loading @@ -226,6 +227,7 @@ enum enum_field_types { MYSQL_TYPE_DECIMAL, MYSQL_TYPE_TINY, /* For backward compatibility */ #define CLIENT_MULTI_QUERIES CLIENT_MULTI_STATEMENTS #define FIELD_TYPE_DECIMAL MYSQL_TYPE_DECIMAL #define FIELD_TYPE_NEWDECIMAL MYSQL_TYPE_NEWDECIMAL #define FIELD_TYPE_TINY MYSQL_TYPE_TINY #define FIELD_TYPE_SHORT MYSQL_TYPE_SHORT #define FIELD_TYPE_LONG MYSQL_TYPE_LONG Loading Loading @@ -341,7 +343,8 @@ struct rand_struct { /* The following is for user defined functions */ enum Item_result {STRING_RESULT, REAL_RESULT, INT_RESULT, ROW_RESULT}; enum Item_result {STRING_RESULT, REAL_RESULT, INT_RESULT, ROW_RESULT, DECIMAL_RESULT}; typedef struct st_udf_args { Loading Loading
.bzrignore +4 −0 Original line number Diff line number Diff line Loading @@ -1056,3 +1056,7 @@ include/mysqld_ername.h include/mysqld_error.h include/sql_state.h support-files/ndb-config-2-node.ini client/decimal.c client/my_decimal.cc client/my_decimal.h libmysqld/my_decimal.cc
client/Makefile.am +7 −2 Original line number Diff line number Diff line Loading @@ -34,7 +34,8 @@ mysqltest_SOURCES= mysqltest.c $(top_srcdir)/mysys/my_getsystime.c mysqltest_LDADD = $(top_builddir)/regex/libregex.a $(LDADD) mysqlbinlog_SOURCES = mysqlbinlog.cc $(top_srcdir)/mysys/mf_tempdir.c mysqlmanagerc_SOURCES = mysqlmanagerc.c sql_src=log_event.h mysql_priv.h log_event.cc sql_src=log_event.h mysql_priv.h log_event.cc my_decimal.h my_decimal.cc strings_src=decimal.c # Fix for mit-threads DEFS = -DUNDEF_THREADS_HACK Loading @@ -43,6 +44,10 @@ link_sources: for f in $(sql_src) ; do \ rm -f $(srcdir)/$$f; \ @LN_CP_F@ $(top_srcdir)/sql/$$f $(srcdir)/$$f; \ done; \ for f in $(strings_src) ; do \ rm -f $(srcdir)/$$f; \ @LN_CP_F@ $(top_srcdir)/strings/$$f $(srcdir)/$$f; \ done; # Don't update the files from bitkeeper Loading
client/mysqlbinlog.cc +6 −0 Original line number Diff line number Diff line Loading @@ -1280,8 +1280,14 @@ int main(int argc, char** argv) */ #ifdef __WIN__ #include "my_decimal.h" #include "decimal.c" #include "my_decimal.cpp" #include "log_event.cpp" #else #include "my_decimal.h" #include "decimal.c" #include "my_decimal.cc" #include "log_event.cc" #endif Loading
include/decimal.h +7 −2 Original line number Diff line number Diff line Loading @@ -26,7 +26,9 @@ typedef struct st_decimal { decimal_digit *buf; } decimal; int decimal2string(decimal *from, char *to, int *to_len); int decimal2string(decimal *from, char *to, int *to_len, int fixed_precision, int fixed_decimals, char filler); int string2decimal(char *from, decimal *to, char **end); int string2decimal_fixed(char *from, decimal *to, char **end); int decimal2ulonglong(decimal *from, ulonglong *to); Loading @@ -35,6 +37,7 @@ int decimal2longlong(decimal *from, longlong *to); int longlong2decimal(longlong from, decimal *to); int decimal2double(decimal *from, double *to); int double2decimal(double from, decimal *to); void decimal_optimize_fraction(decimal *from); int decimal2bin(decimal *from, char *to, int precision, int scale); int bin2decimal(char *from, decimal *to, int precision, int scale); Loading @@ -50,6 +53,7 @@ int decimal_div(decimal *from1, decimal *from2, decimal *to, int scale_incr); int decimal_mod(decimal *from1, decimal *from2, decimal *to); int decimal_round(decimal *from, decimal *to, int new_scale, decimal_round_mode mode); int decimal_is_zero(decimal *from); void max_decimal(int precision, int frac, decimal *to); /* set a decimal to zero */ Loading @@ -65,7 +69,8 @@ int decimal_is_zero(decimal *from); of the decimal (including decimal dot, possible sign and \0) */ #define decimal_string_size(dec) ((dec)->intg + (dec)->frac + ((dec)->frac > 0) + 2) #define decimal_string_size(dec) (((dec)->intg ? (dec)->intg : 1) + \ (dec)->frac + ((dec)->frac > 0) + 2) /* negate a decimal */ #define decimal_neg(dec) do { (dec)->sign^=1; } while(0) Loading
include/mysql_com.h +4 −1 Original line number Diff line number Diff line Loading @@ -211,6 +211,7 @@ enum enum_field_types { MYSQL_TYPE_DECIMAL, MYSQL_TYPE_TINY, MYSQL_TYPE_DATETIME, MYSQL_TYPE_YEAR, MYSQL_TYPE_NEWDATE, MYSQL_TYPE_VARCHAR, MYSQL_TYPE_BIT, MYSQL_TYPE_NEWDECIMAL=246, MYSQL_TYPE_ENUM=247, MYSQL_TYPE_SET=248, MYSQL_TYPE_TINY_BLOB=249, Loading @@ -226,6 +227,7 @@ enum enum_field_types { MYSQL_TYPE_DECIMAL, MYSQL_TYPE_TINY, /* For backward compatibility */ #define CLIENT_MULTI_QUERIES CLIENT_MULTI_STATEMENTS #define FIELD_TYPE_DECIMAL MYSQL_TYPE_DECIMAL #define FIELD_TYPE_NEWDECIMAL MYSQL_TYPE_NEWDECIMAL #define FIELD_TYPE_TINY MYSQL_TYPE_TINY #define FIELD_TYPE_SHORT MYSQL_TYPE_SHORT #define FIELD_TYPE_LONG MYSQL_TYPE_LONG Loading Loading @@ -341,7 +343,8 @@ struct rand_struct { /* The following is for user defined functions */ enum Item_result {STRING_RESULT, REAL_RESULT, INT_RESULT, ROW_RESULT}; enum Item_result {STRING_RESULT, REAL_RESULT, INT_RESULT, ROW_RESULT, DECIMAL_RESULT}; typedef struct st_udf_args { Loading