summaryrefslogtreecommitdiff
path: root/client/mysqltest.c
diff options
context:
space:
mode:
Diffstat (limited to 'client/mysqltest.c')
-rw-r--r--client/mysqltest.c37
1 files changed, 19 insertions, 18 deletions
diff --git a/client/mysqltest.c b/client/mysqltest.c
index 9a2d3e4c137..5942843c6ce 100644
--- a/client/mysqltest.c
+++ b/client/mysqltest.c
@@ -306,17 +306,18 @@ static void close_cons()
static void close_files()
{
- do
+ DBUG_ENTER("close_files");
+ for (; cur_file != file_stack ; cur_file--)
{
if (*cur_file != stdin && *cur_file)
my_fclose(*cur_file,MYF(0));
- } while (cur_file-- != file_stack);
+ }
+ DBUG_VOID_RETURN;
}
static void free_used_memory()
{
uint i;
- DBUG_ENTER("free_used_memory");
close_cons();
close_files();
hash_free(&var_hash);
@@ -336,8 +337,8 @@ static void free_used_memory()
dynstr_free(&ds_res);
my_free(pass,MYF(MY_ALLOW_ZERO_PTR));
free_defaults(default_argv);
+ mysql_server_end();
my_end(MY_CHECK_ERROR);
- DBUG_VOID_RETURN;
}
static void die(const char* fmt, ...)
@@ -1303,15 +1304,11 @@ int read_line(char* buf, int size)
{
if ((*cur_file) != stdin)
my_fclose(*cur_file,MYF(0));
-
+ cur_file--;
+ lineno--;
if (cur_file == file_stack)
return 1;
- else
- {
- cur_file--;
- lineno--;
- continue;
- }
+ continue;
}
switch(state) {
@@ -1592,7 +1589,7 @@ int parse_args(int argc, char **argv)
result_file = optarg;
break;
case 'x':
- if (!(*cur_file = my_fopen(optarg, O_RDONLY, MYF(MY_WME))))
+ if (!(*++cur_file = my_fopen(optarg, O_RDONLY, MYF(MY_WME))))
die("Could not open %s: errno = %d", optarg, errno);
break;
case 'p':
@@ -1949,9 +1946,10 @@ int main(int argc, char** argv)
struct st_query* q;
my_bool require_file=0, q_send_flag=0;
char save_file[FN_REFLEN];
- mysql_server_init(sizeof(embedded_server_args) / sizeof(char *) - 1,
- embedded_server_args, embedded_server_groups);
MY_INIT(argv[0]);
+ {
+ DBUG_ENTER("main");
+ DBUG_PROCESS(argv[0]);
save_file[0]=0;
TMPDIR[0]=0;
@@ -1976,9 +1974,12 @@ int main(int argc, char** argv)
*block_ok = 1;
init_dynamic_string(&ds_res, "", 0, 65536);
parse_args(argc, argv);
+ if (mysql_server_init(sizeof(embedded_server_args) / sizeof(char *) - 1,
+ embedded_server_args, embedded_server_groups))
+ die("Can't initialize MySQL server");
init_var_hash();
- if (!*cur_file)
- *cur_file = stdin;
+ if (cur_file == file_stack)
+ *++cur_file = stdin;
*lineno=1;
if (!( mysql_init(&cur_con->mysql)))
@@ -2114,10 +2115,10 @@ int main(int argc, char** argv)
printf("ok\n");
}
- mysql_server_end();
free_used_memory();
exit(error ? 1 : 0);
- return error ? 1 : 0; /* Keep compiler happy */
+ DBUG_RETURN(error ? 1 : 0); /* Keep compiler happy */
+ }
}