diff options
Diffstat (limited to 'sql/item_func.cc')
-rw-r--r-- | sql/item_func.cc | 31 |
1 files changed, 16 insertions, 15 deletions
diff --git a/sql/item_func.cc b/sql/item_func.cc index 7495987856a..b9cbb38db1a 100644 --- a/sql/item_func.cc +++ b/sql/item_func.cc @@ -317,6 +317,7 @@ void Item_func::print_op(String *str) str->append(')'); } + bool Item_func::eq(const Item *item, bool binary_cmp) const { /* Assume we don't have rtti */ @@ -372,7 +373,7 @@ String *Item_real_func::val_str(String *str) double nr=val(); if (null_value) return 0; /* purecov: inspected */ - str->set(nr,decimals,default_charset()); + str->set(nr,decimals, &my_charset_bin); return str; } @@ -385,16 +386,16 @@ String *Item_num_func::val_str(String *str) if (null_value) return 0; /* purecov: inspected */ if (!unsigned_flag) - str->set(nr,default_charset()); + str->set(nr,&my_charset_bin); else - str->set((ulonglong) nr,default_charset()); + str->set((ulonglong) nr,&my_charset_bin); } else { double nr=val(); if (null_value) return 0; /* purecov: inspected */ - str->set(nr,decimals,default_charset()); + str->set(nr,decimals,&my_charset_bin); } return str; } @@ -421,9 +422,9 @@ String *Item_int_func::val_str(String *str) if (null_value) return 0; if (!unsigned_flag) - str->set(nr,default_charset()); + str->set(nr,&my_charset_bin); else - str->set((ulonglong) nr,default_charset()); + str->set((ulonglong) nr,&my_charset_bin); return str; } @@ -450,16 +451,16 @@ String *Item_num_op::val_str(String *str) if (null_value) return 0; /* purecov: inspected */ if (!unsigned_flag) - str->set(nr,default_charset()); + str->set(nr,&my_charset_bin); else - str->set((ulonglong) nr,default_charset()); + str->set((ulonglong) nr,&my_charset_bin); } else { double nr=val(); if (null_value) return 0; /* purecov: inspected */ - str->set(nr,decimals,default_charset()); + str->set(nr,decimals,&my_charset_bin); } return str; } @@ -1030,9 +1031,9 @@ String *Item_func_min_max::val_str(String *str) if (null_value) return 0; if (!unsigned_flag) - str->set(nr,default_charset()); + str->set(nr,&my_charset_bin); else - str->set((ulonglong) nr,default_charset()); + str->set((ulonglong) nr,&my_charset_bin); return str; } case REAL_RESULT: @@ -1040,7 +1041,7 @@ String *Item_func_min_max::val_str(String *str) double nr=val(); if (null_value) return 0; /* purecov: inspected */ - str->set(nr,decimals,default_charset()); + str->set(nr,decimals,&my_charset_bin); return str; } case STRING_RESULT: @@ -1668,7 +1669,7 @@ String *Item_func_udf_float::val_str(String *str) double nr=val(); if (null_value) return 0; /* purecov: inspected */ - str->set(nr,decimals,default_charset()); + str->set(nr,decimals,&my_charset_bin); return str; } @@ -1689,9 +1690,9 @@ String *Item_func_udf_int::val_str(String *str) if (null_value) return 0; if (!unsigned_flag) - str->set(nr,default_charset()); + str->set(nr,&my_charset_bin); else - str->set((ulonglong) nr,default_charset()); + str->set((ulonglong) nr,&my_charset_bin); return str; } |