Commit 70b1d538 authored by monty@mashka.mysql.fi's avatar monty@mashka.mysql.fi
Browse files

merge with 3.23.53 (only code cleanup and new test case)

parents f42a28e2 74744466
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -51235,6 +51235,8 @@ not yet 100% confident in this code.
@appendixsubsec Changes in release 3.23.53
@itemize @bullet
@item
Fixed core dump bug when using the @code{BINARY} cast on a @code{NULL} value.
@item
Fixed bug in @code{ALTER TABLE} and @code{RENAME TABLE} when running with
@code{-O lower_case_table_names=1} (typically on windows) when giving the
table name in uppercase.
+10 −0
Original line number Diff line number Diff line
@@ -32,3 +32,13 @@ select * from t1 where a="hello ";
select * from t1 where b="hello ";
select * from t1 where b="hello";
drop table t1;

#
# Test of binary and NULL
#
create table t1 (b char(8));
insert into t1 values(NULL);
select b from t1 where binary b like '';
select b from t1 group by binary b like '';
select b from t1 having binary b like '';
drop table t1;
+5 −1
Original line number Diff line number Diff line
@@ -486,7 +486,11 @@ class Item_func_binary :public Item_str_func
  Item_func_binary(Item *a) :Item_str_func(a) {}
  const char *func_name() const { return "binary"; }
  String *val_str(String *a)
  { a=args[0]->val_str(a); null_value=args[0]->null_value; return a; }
  {
    String *tmp=args[0]->val_str(a);
    null_value=args[0]->null_value;
    return tmp;
   }
  void fix_length_and_dec() { binary=1; max_length=args[0]->max_length; }
  void print(String *str) { print_op(str); }
};