Bug #5829 mysqlimport garbles path of the file to be imported

Original code was checking ! unix_socket for local_file flag.  This doesn't work and so was removed.  Now
to import a local file, you must use the --local command line option.

mysqlimport.c:
  Removed check of unix_socket to set local_file
parent 91e8afac
...@@ -246,10 +246,8 @@ static int write_to_table(char *filename, MYSQL *sock) ...@@ -246,10 +246,8 @@ static int write_to_table(char *filename, MYSQL *sock)
DBUG_ENTER("write_to_table"); DBUG_ENTER("write_to_table");
DBUG_PRINT("enter",("filename: %s",filename)); DBUG_PRINT("enter",("filename: %s",filename));
local_file= sock->unix_socket == 0 || opt_local_file;
fn_format(tablename, filename, "", "", 1 | 2); /* removes path & ext. */ fn_format(tablename, filename, "", "", 1 | 2); /* removes path & ext. */
if (local_file) if (! opt_local_file)
strmov(hard_path,filename); strmov(hard_path,filename);
else else
my_load_path(hard_path, filename, NULL); /* filename includes the path */ my_load_path(hard_path, filename, NULL); /* filename includes the path */
...@@ -268,7 +266,7 @@ static int write_to_table(char *filename, MYSQL *sock) ...@@ -268,7 +266,7 @@ static int write_to_table(char *filename, MYSQL *sock)
to_unix_path(hard_path); to_unix_path(hard_path);
if (verbose) if (verbose)
{ {
if (local_file) if (opt_local_file)
fprintf(stdout, "Loading data from LOCAL file: %s into %s\n", fprintf(stdout, "Loading data from LOCAL file: %s into %s\n",
hard_path, tablename); hard_path, tablename);
else else
...@@ -277,7 +275,7 @@ static int write_to_table(char *filename, MYSQL *sock) ...@@ -277,7 +275,7 @@ static int write_to_table(char *filename, MYSQL *sock)
} }
sprintf(sql_statement, "LOAD DATA %s %s INFILE '%s'", sprintf(sql_statement, "LOAD DATA %s %s INFILE '%s'",
opt_low_priority ? "LOW_PRIORITY" : "", opt_low_priority ? "LOW_PRIORITY" : "",
local_file ? "LOCAL" : "", hard_path); opt_local_file ? "LOCAL" : "", hard_path);
end= strend(sql_statement); end= strend(sql_statement);
if (replace) if (replace)
end= strmov(end, " REPLACE"); end= strmov(end, " REPLACE");
......
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