merge with 5.1

This commit is contained in:
Sergei Golubchik 2010-09-11 20:43:48 +02:00
commit a3d80d952d
448 changed files with 9726 additions and 3454 deletions

View file

@ -578,7 +578,11 @@ void Protocol::end_partial_result_set(THD *thd_arg)
bool Protocol::flush()
{
#ifndef EMBEDDED_LIBRARY
return net_flush(&thd->net);
bool error;
thd->main_da.can_overwrite_status= TRUE;
error= net_flush(&thd->net);
thd->main_da.can_overwrite_status= FALSE;
return error;
#else
return 0;
#endif
@ -618,7 +622,8 @@ bool Protocol::send_fields(List<Item> *list, uint flags)
if (flags & SEND_NUM_ROWS)
{ // Packet with number of elements
uchar *pos= net_store_length(buff, list->elements);
(void) my_net_write(&thd->net, buff, (size_t) (pos-buff));
if (my_net_write(&thd->net, buff, (size_t) (pos-buff)))
DBUG_RETURN(1);
}
#ifndef DBUG_OFF
@ -742,7 +747,7 @@ bool Protocol::send_fields(List<Item> *list, uint flags)
if (flags & SEND_DEFAULTS)
item->send(&prot, &tmp); // Send default value
if (prot.write())
break; /* purecov: inspected */
DBUG_RETURN(1);
#ifndef DBUG_OFF
field_types[count++]= field.type;
#endif
@ -755,7 +760,9 @@ bool Protocol::send_fields(List<Item> *list, uint flags)
to show that there is no cursor.
Send no warning information, as it will be sent at statement end.
*/
write_eof_packet(thd, &thd->net, thd->server_status, thd->total_warn_count);
if (write_eof_packet(thd, &thd->net, thd->server_status,
thd->total_warn_count))
DBUG_RETURN(1);
}
DBUG_RETURN(prepare_for_send(list));