Commit 0ee9467b authored by unknown's avatar unknown

Merge pilot.(none):/data/msvensson/mysql/mysql-5.0-maint

into  pilot.(none):/data/msvensson/mysql/mysql-5.1-new-maint


client/mysqltest.c:
  Merge 5.0->5.1
parents f386e295 2bb6a44a
......@@ -2976,7 +2976,22 @@ void do_diff_files(struct st_command *command)
DBUG_VOID_RETURN;
}
/*
struct st_connection * find_connection_by_name(const char *name)
{
struct st_connection *con;
for (con= connections; con < next_con; con++)
{
if (!strcmp(con->name, name))
{
return con;
}
}
return 0; /* Connection not found */
}
/*
SYNOPSIS
do_send_quit
command called command
......@@ -2984,7 +2999,7 @@ void do_diff_files(struct st_command *command)
DESCRIPTION
Sends a simple quit command to the server for the named connection.
*/
*/
void do_send_quit(struct st_command *command)
{
......@@ -2995,7 +3010,7 @@ void do_send_quit(struct st_command *command)
DBUG_PRINT("enter",("name: '%s'",p));
if (!*p)
die("Missing connection name in do_send_quit");
die("Missing connection name in send_quit");
name= p;
while (*p && !my_isspace(charset_info,*p))
p++;
......@@ -3004,17 +3019,12 @@ void do_send_quit(struct st_command *command)
*p++= 0;
command->last_argument= p;
/* Loop through connection pool for connection to close */
for (con= connections; con < next_con; con++)
{
DBUG_PRINT("info", ("con->name: %s", con->name));
if (!strcmp(con->name, name))
{
if (!(con= find_connection_by_name(name)))
die("connection '%s' not found in connection pool", name);
simple_command(&con->mysql,COM_QUIT,0,0,1);
DBUG_VOID_RETURN;
}
}
die("connection '%s' not found in connection pool", name);
}
......@@ -3855,20 +3865,6 @@ void set_reconnect(MYSQL* mysql, int val)
}
struct st_connection * find_connection_by_name(const char *name)
{
struct st_connection *con;
for (con= connections; con < next_con; con++)
{
if (!strcmp(con->name, name))
{
return con;
}
}
return 0; /* Connection not found */
}
int select_connection_name(const char *name)
{
DBUG_ENTER("select_connection_name");
......@@ -3916,12 +3912,9 @@ void do_close_connection(struct st_command *command)
*p++= 0;
command->last_argument= p;
/* Loop through connection pool for connection to close */
for (con= connections; con < next_con; con++)
{
DBUG_PRINT("info", ("con->name: %s", con->name));
if (!strcmp(con->name, name))
{
if (!(con= find_connection_by_name(name)))
die("connection '%s' not found in connection pool", name);
DBUG_PRINT("info", ("Closing connection %s", con->name));
#ifndef EMBEDDED_LIBRARY
if (command->type == Q_DIRTY_CLOSE)
......@@ -3933,14 +3926,16 @@ void do_close_connection(struct st_command *command)
}
}
#endif
if (next_con->stmt)
mysql_stmt_close(next_con->stmt);
next_con->stmt= 0;
if (con->stmt)
mysql_stmt_close(con->stmt);
con->stmt= 0;
mysql_close(&con->mysql);
if (con->util_mysql)
mysql_close(con->util_mysql);
con->util_mysql= 0;
my_free(con->name, MYF(0));
/*
......@@ -3951,9 +3946,6 @@ void do_close_connection(struct st_command *command)
die("Out of memory");
DBUG_VOID_RETURN;
}
}
die("connection '%s' not found in connection pool", name);
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment