Commit 69c54058 authored by Bjorn Munch's avatar Bjorn Munch

Bug #48250 mysqtest_embedded can lock destroyed mutex

As suggested, replaced relevant uses of my_fopen with fopen (and close)
Tested on HPUX where it was reproducable with test innodb_bug30919
parent 6b6a6c93
...@@ -1119,7 +1119,7 @@ void close_files() ...@@ -1119,7 +1119,7 @@ void close_files()
if (cur_file->file && cur_file->file != stdin) if (cur_file->file && cur_file->file != stdin)
{ {
DBUG_PRINT("info", ("closing file: %s", cur_file->file_name)); DBUG_PRINT("info", ("closing file: %s", cur_file->file_name));
my_fclose(cur_file->file, MYF(0)); fclose(cur_file->file);
} }
my_free((uchar*) cur_file->file_name, MYF(MY_ALLOW_ZERO_PTR)); my_free((uchar*) cur_file->file_name, MYF(MY_ALLOW_ZERO_PTR));
cur_file->file_name= 0; cur_file->file_name= 0;
...@@ -2441,7 +2441,7 @@ int open_file(const char *name) ...@@ -2441,7 +2441,7 @@ int open_file(const char *name)
if (cur_file == file_stack_end) if (cur_file == file_stack_end)
die("Source directives are nesting too deep"); die("Source directives are nesting too deep");
cur_file++; cur_file++;
if (!(cur_file->file = my_fopen(buff, O_RDONLY | FILE_BINARY, MYF(0)))) if (!(cur_file->file = fopen(buff, "rb")))
{ {
cur_file--; cur_file--;
die("Could not open '%s' for reading, errno: %d", buff, errno); die("Could not open '%s' for reading, errno: %d", buff, errno);
...@@ -5286,7 +5286,7 @@ int read_line(char *buf, int size) ...@@ -5286,7 +5286,7 @@ int read_line(char *buf, int size)
found_eof: found_eof:
if (cur_file->file != stdin) if (cur_file->file != stdin)
{ {
my_fclose(cur_file->file, MYF(0)); fclose(cur_file->file);
cur_file->file= 0; cur_file->file= 0;
} }
my_free((uchar*) cur_file->file_name, MYF(MY_ALLOW_ZERO_PTR)); my_free((uchar*) cur_file->file_name, MYF(MY_ALLOW_ZERO_PTR));
...@@ -5865,7 +5865,7 @@ get_one_option(int optid, const struct my_option *opt __attribute__((unused)), ...@@ -5865,7 +5865,7 @@ get_one_option(int optid, const struct my_option *opt __attribute__((unused)),
fn_format(buff, argument, "", "", MY_UNPACK_FILENAME); fn_format(buff, argument, "", "", MY_UNPACK_FILENAME);
DBUG_ASSERT(cur_file == file_stack && cur_file->file == 0); DBUG_ASSERT(cur_file == file_stack && cur_file->file == 0);
if (!(cur_file->file= if (!(cur_file->file=
my_fopen(buff, O_RDONLY | FILE_BINARY, MYF(0)))) fopen(buff, "rb")))
die("Could not open '%s' for reading, errno: %d", buff, errno); die("Could not open '%s' for reading, errno: %d", buff, errno);
cur_file->file_name= my_strdup(buff, MYF(MY_FAE)); cur_file->file_name= my_strdup(buff, MYF(MY_FAE));
cur_file->lineno= 1; cur_file->lineno= 1;
......
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