From 89ee639541a36aef7be25855b5bdc24b890108f8 Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 7 Sep 2004 11:55:34 +0500 Subject: A set of mysql_home_path-related fixes mysys/mf_format.c: I think here i fixed a bug sql/item_strfunc.cc: mysql_real_data_home added sql/sql_class.cc: it's more closer to what manual says sql/sql_load.cc: code rewritten to be similar sql/sql_table.cc: mysql_real_data_home added to the path --- sql/sql_load.cc | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) (limited to 'sql/sql_load.cc') diff --git a/sql/sql_load.cc b/sql/sql_load.cc index 1f4905837f0..8ffd73e7ea1 100644 --- a/sql/sql_load.cc +++ b/sql/sql_load.cc @@ -179,17 +179,16 @@ int mysql_load(THD *thd,sql_exchange *ex,TABLE_LIST *table_list, #ifdef DONT_ALLOW_FULL_LOAD_DATA_PATHS ex->file_name+=dirname_length(ex->file_name); #endif - if (!dirname_length(ex->file_name) && - strlen(ex->file_name)+strlen(mysql_real_data_home)+strlen(tdb)+3 < - FN_REFLEN) + if (!dirname_length(ex->file_name)) { - (void) sprintf(name,"%s/%s/%s",mysql_data_home,tdb,ex->file_name); - unpack_filename(name,name); /* Convert to system format */ + strxnmov(name, FN_REFLEN, mysql_real_data_home, tdb, NullS); + (void) fn_format(name, ex->file_name, name, "", MY_RELATIVE_PATH); + unpack_filename(name,name); } else { - my_load_path(name, ex->file_name, mysql_real_data_home); - unpack_filename(name, name); + (void) fn_format(name, ex->file_name, mysql_real_data_home, "", MY_RELATIVE_PATH); + unpack_filename(name,name); #if !defined(__WIN__) && !defined(OS2) && ! defined(__NETWARE__) MY_STAT stat_info; if (!my_stat(name,&stat_info,MYF(MY_WME))) -- cgit v1.2.1 From 9080b83818629b3f8d6981043c7de6c9b0bcbe2b Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 7 Sep 2004 17:28:26 +0500 Subject: Code cleanup sql/item_strfunc.cc: unpack_filename changed with fn_format's hint sql/sql_load.cc: unpack_filename changed with fn_format's hint --- sql/sql_load.cc | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'sql/sql_load.cc') diff --git a/sql/sql_load.cc b/sql/sql_load.cc index 8ffd73e7ea1..e1f0b1f9501 100644 --- a/sql/sql_load.cc +++ b/sql/sql_load.cc @@ -182,13 +182,13 @@ int mysql_load(THD *thd,sql_exchange *ex,TABLE_LIST *table_list, if (!dirname_length(ex->file_name)) { strxnmov(name, FN_REFLEN, mysql_real_data_home, tdb, NullS); - (void) fn_format(name, ex->file_name, name, "", MY_RELATIVE_PATH); - unpack_filename(name,name); + (void) fn_format(name, ex->file_name, name, "", + MY_RELATIVE_PATH | MY_UNPACK_FILENAME); } else { - (void) fn_format(name, ex->file_name, mysql_real_data_home, "", MY_RELATIVE_PATH); - unpack_filename(name,name); + (void) fn_format(name, ex->file_name, mysql_real_data_home, "", + MY_RELATIVE_PATH | MY_UNPACK_FILENAME); #if !defined(__WIN__) && !defined(OS2) && ! defined(__NETWARE__) MY_STAT stat_info; if (!my_stat(name,&stat_info,MYF(MY_WME))) -- cgit v1.2.1