diff options
author | unknown <holyfoot@deer.(none)> | 2006-01-04 14:20:28 +0400 |
---|---|---|
committer | unknown <holyfoot@deer.(none)> | 2006-01-04 14:20:28 +0400 |
commit | 6b27acbdf41dd3c990af4627ddaf8fbfcd8eb4e6 (patch) | |
tree | bcb306f8c631b6b3153296059aae11b7e290ded7 /sql-common | |
parent | 81ca15813bfc482ac98614de41a867e47dde07d3 (diff) | |
download | mariadb-git-6b27acbdf41dd3c990af4627ddaf8fbfcd8eb4e6.tar.gz |
Big patch to make embedded-server working in 5.x
Now it supports queries returning several results
(particularly important with the SP)
include/mysql.h:
embedded_query_result structure added
libmysql/libmysql.c:
embedded-server related fixes
libmysqld/emb_qcache.cc:
multiple-result support added
libmysqld/embedded_priv.h:
embedded_query_result struct implemented
libmysqld/lib_sql.cc:
multiple-result support added
libmysqld/libmysqld.c:
small fixes
mysql-test/t/backup.test:
test fixed
mysql-test/t/binlog_stm_binlog.test:
test fixed
mysql-test/t/binlog_stm_blackhole.test:
test fixed
mysql-test/t/binlog_stm_ctype_cp932.test:
test fixed
mysql-test/t/compress.test:
test fixed
mysql-test/t/delayed.test:
test fixed
mysql-test/t/federated.test:
test fixed
mysql-test/t/federated_archive.test:
test fixed
mysql-test/t/federated_bug_13118.test:
test fixed
mysql-test/t/federated_transactions.test:
test fixed
mysql-test/t/flush_table.test:
test fixed
mysql-test/t/handler.test:
test fixed
mysql-test/t/init_connect.test:
test fixed
mysql-test/t/innodb.test:
test fixed
mysql-test/t/mysql.test:
test fixed
mysql-test/t/mysql_client_test.test:
test fixed
mysql-test/t/mysqltest.test:
test fixed
mysql-test/t/query_cache.test:
test fixed
mysql-test/t/query_cache_notembedded.test:
test fixed
mysql-test/t/read_only.test:
test fixed
mysql-test/t/skip_grants.test:
test fixed
mysql-test/t/sp-destruct.test:
test fixed
mysql-test/t/sp-error.test:
test fixed
mysql-test/t/sp-threads.test:
test fixed
mysql-test/t/sp.test:
test fixed
mysql-test/t/view.test:
test fixed
mysql-test/t/wait_timeout.test:
test fixed
sql-common/client.c:
small fixes
sql/mysqld.cc:
embedded-server related fix
sql/protocol.cc:
embedded-server related fix
sql/protocol.h:
embedded-server related fix
sql/sql_class.cc:
embedded-server related fix
sql/sql_class.h:
embedded-server related fix
sql/sql_cursor.cc:
embedded-server related fix
sql/sql_parse.cc:
embedded-server related fix
sql/sql_prepare.cc:
embedded-server related fix
Diffstat (limited to 'sql-common')
-rw-r--r-- | sql-common/client.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/sql-common/client.c b/sql-common/client.c index 4c2debd41ff..8e55cf7c2b7 100644 --- a/sql-common/client.c +++ b/sql-common/client.c @@ -1545,7 +1545,8 @@ static MYSQL_METHODS client_methods= NULL, cli_read_statistics, cli_read_query_result, - cli_read_change_user_result + cli_read_change_user_result, + cli_read_binary_rows #endif }; @@ -2339,8 +2340,9 @@ static void mysql_close_free(MYSQL *mysql) my_free(mysql->user,MYF(MY_ALLOW_ZERO_PTR)); my_free(mysql->passwd,MYF(MY_ALLOW_ZERO_PTR)); my_free(mysql->db,MYF(MY_ALLOW_ZERO_PTR)); + my_free(mysql->info_buffer,MYF(MY_ALLOW_ZERO_PTR)); /* Clear pointers for better safety */ - mysql->host_info=mysql->user=mysql->passwd=mysql->db=0; + mysql->info_buffer=mysql->host_info=mysql->user=mysql->passwd=mysql->db=0; } @@ -2476,8 +2478,7 @@ get_info: if (!(mysql->server_status & SERVER_STATUS_AUTOCOMMIT)) mysql->server_status|= SERVER_STATUS_IN_TRANS; - if (!(fields=(*mysql->methods->read_rows)(mysql,(MYSQL_FIELD*)0, - protocol_41(mysql) ? 7 : 5))) + if (!(fields=cli_read_rows(mysql,(MYSQL_FIELD*)0, protocol_41(mysql) ? 7:5))) DBUG_RETURN(1); if (!(mysql->fields=unpack_fields(fields,&mysql->field_alloc, (uint) field_count,0, |