Commit e3e9ccc5 authored by unknown's avatar unknown
Browse files

Merge bk@192.168.21.1:/usr/home/bk/mysql-5.0

into deer.(none):/home/hf/work/mysql-5.0.errmsg


mysql-test/r/row.result:
  Auto merged
sql/item.cc:
  Auto merged
parents 566460ac acd0dbd2
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -15,7 +15,7 @@ select row('a',1.5,3) IN (row(1,2,3), row('a',1.5,3), row('a','a','a'));
row('a',1.5,3) IN (row(1,2,3), row('a',1.5,3), row('a','a','a'))
1
Warnings:
Error	1366	Incorrect decimal value: '' for column '' at row -1
Warning	1292	Truncated incorrect DECIMAL value: 'a'
Warning	1292	Truncated incorrect INTEGER value: 'a'
select row('a',0,3) IN (row(3,2,3), row('a','a','3'), row(1,3,3));
row('a',0,3) IN (row(3,2,3), row('a','a','3'), row(1,3,3))
+10 −6
Original line number Diff line number Diff line
@@ -260,8 +260,15 @@ my_decimal *Item::val_decimal_from_string(my_decimal *decimal_value)
    return 0;                                   // NULL or EOM

  end_ptr= (char*) res->ptr()+ res->length();
  str2my_decimal(E_DEC_FATAL_ERROR, res->ptr(), res->length(), res->charset(),
                 decimal_value);
  if (str2my_decimal(E_DEC_FATAL_ERROR & ~E_DEC_BAD_NUM,
                     res->ptr(), res->length(), res->charset(),
                     decimal_value) & E_DEC_BAD_NUM)
  {
    push_warning_printf(current_thd, MYSQL_ERROR::WARN_LEVEL_WARN,
                        ER_TRUNCATED_WRONG_VALUE,
                        ER(ER_TRUNCATED_WRONG_VALUE), "DECIMAL",
                        str_value.c_ptr());
  }
  return decimal_value;
}

@@ -1515,10 +1522,7 @@ longlong Item_string::val_int()

my_decimal *Item_string::val_decimal(my_decimal *decimal_value)
{
  /* following assert is redundant, because fixed=1 assigned in constructor */
  DBUG_ASSERT(fixed == 1);
  string2my_decimal(E_DEC_FATAL_ERROR, &str_value, decimal_value);
  return (decimal_value);
  return val_decimal_from_string(decimal_value);
}