Commit 7acccd81 authored by marko@hundin.mysql.fi's avatar marko@hundin.mysql.fi

srv_add_path_separator_if_needed: be static; use memcpy, not sprintf

parent ec06c782
...@@ -20,16 +20,6 @@ srv_normalize_path_for_win( ...@@ -20,16 +20,6 @@ srv_normalize_path_for_win(
/*=======================*/ /*=======================*/
char* str); /* in/out: null-terminated character string */ char* str); /* in/out: null-terminated character string */
/************************************************************************* /*************************************************************************
Adds a slash or a backslash to the end of a string if it is missing
and the string is not empty. */
char*
srv_add_path_separator_if_needed(
/*=============================*/
/* out, own: string which has the separator if the
string is not empty */
char* str); /* in: null-terminated character string */
/*************************************************************************
Reads the data files and their sizes from a character string given in Reads the data files and their sizes from a character string given in
the .cnf file. */ the .cnf file. */
......
...@@ -441,9 +441,9 @@ io_handler_thread( ...@@ -441,9 +441,9 @@ io_handler_thread(
} }
#ifdef __WIN__ #ifdef __WIN__
#define SRV_PATH_SEPARATOR "\\" #define SRV_PATH_SEPARATOR '\\'
#else #else
#define SRV_PATH_SEPARATOR "/" #define SRV_PATH_SEPARATOR '/'
#endif #endif
/************************************************************************* /*************************************************************************
...@@ -470,31 +470,26 @@ srv_normalize_path_for_win( ...@@ -470,31 +470,26 @@ srv_normalize_path_for_win(
Adds a slash or a backslash to the end of a string if it is missing Adds a slash or a backslash to the end of a string if it is missing
and the string is not empty. */ and the string is not empty. */
static
char* char*
srv_add_path_separator_if_needed( srv_add_path_separator_if_needed(
/*=============================*/ /*=============================*/
/* out, own: string which has the separator if the /* out: string which has the separator if the
string is not empty */ string is not empty */
char* str) /* in: null-terminated character string */ char* str) /* in: null-terminated character string */
{ {
char* out_str; char* out_str;
ulint len = ut_strlen(str);
if (ut_strlen(str) == 0) { if (len == 0 || str[len - 1] == SRV_PATH_SEPARATOR) {
return(str); return(str);
} }
if (str[ut_strlen(str) - 1] == SRV_PATH_SEPARATOR[0]) { out_str = ut_malloc(len + 2);
out_str = ut_malloc(ut_strlen(str) + 1); memcpy(out_str, str, len);
out_str[len] = SRV_PATH_SEPARATOR;
sprintf(out_str, "%s", str); out_str[len + 1] = 0;
return(out_str);
}
out_str = ut_malloc(ut_strlen(str) + 2);
sprintf(out_str, "%s%s", str, SRV_PATH_SEPARATOR);
return(out_str); return(out_str);
} }
......
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