Commit 7f70f599 authored by unknown's avatar unknown
Browse files

Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-5.0

into  mysql.com:/home/cps/mysql/trees/mysql-5.0


mysql-test/r/sp.result:
  manual merge
mysql-test/t/sp.test:
  manual merge
parents 20c8bfe7 cfb24151
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -3264,4 +3264,12 @@ bug131333()
NULL
drop procedure bug131333|
drop function bug131333|
drop procedure if exists bug13124|
create procedure bug13124()
begin
declare y integer;
set @x=y;
end|
call bug13124()|
drop procedure  bug13124|
drop table t1,t2;
+14 −0
Original line number Diff line number Diff line
@@ -4107,6 +4107,20 @@ select bug131333()|
drop procedure bug131333|
drop function bug131333|

#
# Bug #13124    Stored Procedure using SELECT INTO crashes server
#

--disable_warnings
drop procedure if exists bug13124|
--enable_warnings
create procedure bug13124()
begin
  declare y integer;
  set @x=y;
end|
call bug13124()|
drop procedure  bug13124|

#
# BUG#NNNN: New bug synopsis
+6 −1
Original line number Diff line number Diff line
@@ -818,6 +818,8 @@ String *Item_splocal::val_str(String *sp)
  DBUG_ASSERT(fixed);
  Item *it= this_item();
  String *ret= it->val_str(sp);

  null_value= it->null_value;
  /*
    This way we mark returned value of val_str as const,
    so that various functions (e.g. CONCAT) won't try to
@@ -833,9 +835,12 @@ String *Item_splocal::val_str(String *sp)
    This is intended behaviour of Item_func_concat. Comments to
    Item_param class contain some more details on the topic.
  */

  if (!ret)
    return NULL;

  str_value_ptr.set(ret->ptr(), ret->length(),
                    ret->charset());
  null_value= it->null_value;
  return &str_value_ptr;
}