mirror of
https://github.com/MariaDB/server.git
synced 2025-01-19 13:32:33 +01:00
Merge bk@192.168.21.1:mysql-4.1-opt
into mysql.com:/home/hf/work/0current_stmt/my41-current_stmt
This commit is contained in:
commit
f95645ac36
3 changed files with 11 additions and 11 deletions
|
@ -270,12 +270,6 @@ typedef struct st_mysql
|
|||
from mysql_stmt_close if close had to cancel result set of this object.
|
||||
*/
|
||||
my_bool *unbuffered_fetch_owner;
|
||||
/*
|
||||
In embedded server it points to the statement that is processed
|
||||
in the current query. We store some results directly in statement
|
||||
fields then.
|
||||
*/
|
||||
struct st_mysql_stmt *current_stmt;
|
||||
} MYSQL;
|
||||
|
||||
typedef struct st_mysql_res {
|
||||
|
|
|
@ -94,7 +94,7 @@ emb_advanced_command(MYSQL *mysql, enum enum_server_command command,
|
|||
mysql->affected_rows= ~(my_ulonglong) 0;
|
||||
mysql->field_count= 0;
|
||||
net->last_errno= 0;
|
||||
mysql->current_stmt= stmt;
|
||||
thd->current_stmt= stmt;
|
||||
|
||||
thd->store_globals(); // Fix if more than one connect
|
||||
/*
|
||||
|
@ -644,8 +644,8 @@ bool Protocol::send_fields(List<Item> *list, uint flag)
|
|||
DBUG_RETURN(0);
|
||||
|
||||
field_count= list->elements;
|
||||
field_alloc= mysql->current_stmt ? &mysql->current_stmt->mem_root :
|
||||
&mysql->field_alloc;
|
||||
field_alloc= thd->current_stmt ? &thd->current_stmt->mem_root :
|
||||
&mysql->field_alloc;
|
||||
if (!(client_field= mysql->fields=
|
||||
(MYSQL_FIELD *)alloc_root(field_alloc,
|
||||
sizeof(MYSQL_FIELD) * field_count)))
|
||||
|
@ -751,8 +751,8 @@ bool Protocol_prep::write()
|
|||
{
|
||||
MYSQL *mysql= thd->mysql;
|
||||
|
||||
if (mysql->current_stmt)
|
||||
data= &mysql->current_stmt->result;
|
||||
if (thd->current_stmt)
|
||||
data= &thd->current_stmt->result;
|
||||
else
|
||||
{
|
||||
if (!(data= (MYSQL_DATA*) my_malloc(sizeof(MYSQL_DATA),
|
||||
|
|
|
@ -686,6 +686,12 @@ public:
|
|||
char *extra_data;
|
||||
ulong extra_length;
|
||||
String query_rest;
|
||||
/*
|
||||
In embedded server it points to the statement that is processed
|
||||
in the current query. We store some results directly in statement
|
||||
fields then.
|
||||
*/
|
||||
struct st_mysql_stmt *current_stmt;
|
||||
#endif
|
||||
NET net; // client connection descriptor
|
||||
MEM_ROOT warn_root; // For warnings and errors
|
||||
|
|
Loading…
Reference in a new issue