summaryrefslogtreecommitdiff
path: root/libmysqld
diff options
context:
space:
mode:
authorunknown <konstantin@mysql.com>2005-06-30 16:17:10 +0400
committerunknown <konstantin@mysql.com>2005-06-30 16:17:10 +0400
commitc8401177d3858b9659af0253958547f78da4d9df (patch)
treeb91ecb9596611574c3dc8bcfd25af12fca92bfe9 /libmysqld
parent969230834db26858194a6655ef36c0aae26b0d4c (diff)
downloadmariadb-git-c8401177d3858b9659af0253958547f78da4d9df.tar.gz
A fix and a test case for Bug#10794 "mysql_stmt_attr_set no
open cursor after mysql_stmt_execute" + post-review fixes. The bug was caused by wrong flags in stmt->server_status on the client side: if there was no cursor, the server didn't send server_status flags to the client, and the old flags were used to set up the fetch function of a statement. Consequently, stmt_read_row_from_cursor was used when there was no cursor. The fix fixes the server to always send server flags to the client. include/mysql_com.h: Update stale comments. libmysql/libmysql.c: Remove an extra assignment. libmysqld/lib_sql.cc: Update to correspond to the changed signature of send_eof sql/protocol.cc: Actual fix for bug#10794: create a function that writes the eof packet to network and use it from send_fields. We need to send a full eof packet from send_fields to inform the client about the cursor status (that there is no cursor in this case). sql/protocol.h: Remove an unused parameter for send_eof. tests/mysql_client_test.c: A test case for Bug#10794 "mysql_stmt_attr_set no open cursor after mysql_stmt_execute"
Diffstat (limited to 'libmysqld')
-rw-r--r--libmysqld/lib_sql.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/libmysqld/lib_sql.cc b/libmysqld/lib_sql.cc
index dd4ba939ebe..c3b239ac7b9 100644
--- a/libmysqld/lib_sql.cc
+++ b/libmysqld/lib_sql.cc
@@ -773,7 +773,7 @@ send_ok(THD *thd,ha_rows affected_rows,ulonglong id,const char *message)
}
void
-send_eof(THD *thd, bool no_flush)
+send_eof(THD *thd)
{
}