mirror of
https://github.com/MariaDB/server.git
synced 2025-07-27 18:02:13 +03:00
Merge mysql.com:/home/kostja/work/mysql-4.1-root
into mysql.com:/home/kostja/work/mysql-5.0-root
This commit is contained in:
@ -1809,6 +1809,18 @@ static my_bool my_realloc_str(NET *net, ulong length)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Clear possible error statee of struct NET */
|
||||||
|
|
||||||
|
static void net_clear_error(NET *net)
|
||||||
|
{
|
||||||
|
if (net->last_errno)
|
||||||
|
{
|
||||||
|
net->last_errno= 0;
|
||||||
|
net->last_error[0]= '\0';
|
||||||
|
strmov(net->sqlstate, not_error_sqlstate);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Set statement error code, sqlstate, and error message
|
Set statement error code, sqlstate, and error message
|
||||||
from given errcode and sqlstate.
|
from given errcode and sqlstate.
|
||||||
@ -4869,6 +4881,11 @@ my_bool STDCALL mysql_stmt_close(MYSQL_STMT *stmt)
|
|||||||
|
|
||||||
if (mysql->unbuffered_fetch_owner == &stmt->unbuffered_fetch_cancelled)
|
if (mysql->unbuffered_fetch_owner == &stmt->unbuffered_fetch_cancelled)
|
||||||
mysql->unbuffered_fetch_owner= 0;
|
mysql->unbuffered_fetch_owner= 0;
|
||||||
|
/*
|
||||||
|
Clear NET error state: if the following commands come through
|
||||||
|
successfully, connection will still be usable for other commands.
|
||||||
|
*/
|
||||||
|
net_clear_error(&mysql->net);
|
||||||
if (mysql->status != MYSQL_STATUS_READY)
|
if (mysql->status != MYSQL_STATUS_READY)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
|
@ -12513,7 +12513,7 @@ static void test_bug6761(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* Bug#8330 - Bug #8330 mysql_stmt_execute crashes (libmysql) */
|
/* Bug#8330 - mysql_stmt_execute crashes (libmysql) */
|
||||||
|
|
||||||
static void test_bug8330()
|
static void test_bug8330()
|
||||||
{
|
{
|
||||||
@ -12564,6 +12564,26 @@ static void test_bug8330()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Bug#7990 - mysql_stmt_close doesn't reset mysql->net.last_error */
|
||||||
|
|
||||||
|
static void test_bug7990()
|
||||||
|
{
|
||||||
|
MYSQL_STMT *stmt;
|
||||||
|
int rc;
|
||||||
|
myheader("test_bug7990");
|
||||||
|
|
||||||
|
stmt= mysql_stmt_init(mysql);
|
||||||
|
rc= mysql_stmt_prepare(stmt, "foo", 3);
|
||||||
|
/*
|
||||||
|
XXX: the fact that we store errno both in STMT and in
|
||||||
|
MYSQL is not documented and is subject to change in 5.0
|
||||||
|
*/
|
||||||
|
DIE_UNLESS(rc && mysql_stmt_errno(stmt) && mysql_errno(mysql));
|
||||||
|
mysql_stmt_close(stmt);
|
||||||
|
DIE_UNLESS(!mysql_errno(mysql));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Read and parse arguments and MySQL options from my.cnf
|
Read and parse arguments and MySQL options from my.cnf
|
||||||
*/
|
*/
|
||||||
|
Reference in New Issue
Block a user