Loading sql/item_func.cc +19 −7 Original line number Diff line number Diff line Loading @@ -1629,13 +1629,25 @@ void Item_func_int_val::find_num_type() longlong Item_func_ceiling::int_op() { /* the volatile's for BUG #3051 to calm optimizer down (because of gcc's bug) */ volatile double value= args[0]->val_real(); longlong result; switch (args[0]->result_type()) { case INT_RESULT: result= args[0]->val_int(); null_value= args[0]->null_value; return (longlong) ceil(value); break; case DECIMAL_RESULT: { my_decimal dec_buf, *dec; if ((dec= decimal_op(&dec_buf))) my_decimal2int(E_DEC_FATAL_ERROR, dec, unsigned_flag, &result); else result= 0; break; } default: result= (longlong)real_op(); }; return result; } Loading Loading
sql/item_func.cc +19 −7 Original line number Diff line number Diff line Loading @@ -1629,13 +1629,25 @@ void Item_func_int_val::find_num_type() longlong Item_func_ceiling::int_op() { /* the volatile's for BUG #3051 to calm optimizer down (because of gcc's bug) */ volatile double value= args[0]->val_real(); longlong result; switch (args[0]->result_type()) { case INT_RESULT: result= args[0]->val_int(); null_value= args[0]->null_value; return (longlong) ceil(value); break; case DECIMAL_RESULT: { my_decimal dec_buf, *dec; if ((dec= decimal_op(&dec_buf))) my_decimal2int(E_DEC_FATAL_ERROR, dec, unsigned_flag, &result); else result= 0; break; } default: result= (longlong)real_op(); }; return result; } Loading