diff options
author | unknown <petr@mysql.com> | 2005-08-05 14:53:23 +0400 |
---|---|---|
committer | unknown <petr@mysql.com> | 2005-08-05 14:53:23 +0400 |
commit | d976f87fb47310581a73903581a57e67a530009b (patch) | |
tree | 17926b0a8cc6d496768e9c922c587573b3164388 /server-tools/instance-manager/options.cc | |
parent | 7c3f55ec9cbe9b5de71440717a89b6259664d3cf (diff) | |
parent | 85834c3b030e6680b02cf8b49ea71903d30a4ea2 (diff) | |
download | mariadb-git-d976f87fb47310581a73903581a57e67a530009b.tar.gz |
Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/cps/mysql/trees/mysql-5.0
Diffstat (limited to 'server-tools/instance-manager/options.cc')
-rw-r--r-- | server-tools/instance-manager/options.cc | 30 |
1 files changed, 20 insertions, 10 deletions
diff --git a/server-tools/instance-manager/options.cc b/server-tools/instance-manager/options.cc index a8e677db630..86e21ec8a11 100644 --- a/server-tools/instance-manager/options.cc +++ b/server-tools/instance-manager/options.cc @@ -32,17 +32,16 @@ const char *default_password_file_name= QUOTE(DEFAULT_PASSWORD_FILE_NAME); const char *default_log_file_name= QUOTE(DEFAULT_LOG_FILE_NAME); -char default_config_file[FN_REFLEN]= "/etc/my.cnf"; +#ifdef __WIN__ +char windows_config_file[FN_REFLEN]; -#ifndef __WIN__ -char Options::run_as_service; -const char *Options::user= 0; /* No default value */ -const char *Options::config_file= NULL; -#else char Options::install_as_service; char Options::remove_service; -const char *Options::config_file= QUOTE(DEFAULT_CONFIG_FILE); +#else +char Options::run_as_service; +const char *Options::user= 0; /* No default value */ #endif +const char *Options::config_file= QUOTE(DEFAULT_CONFIG_FILE); const char *Options::log_file_name= default_log_file_name; const char *Options::pid_file_name= QUOTE(DEFAULT_PID_FILE_NAME); const char *Options::socket_file_name= QUOTE(DEFAULT_SOCKET_FILE_NAME); @@ -271,9 +270,20 @@ int Options::load(int argc, char **argv) */ if (Options::config_file == NULL) { - ::GetModuleFileName(NULL, default_config_file, sizeof(default_config_file)); char *filename= strrchr(default_config_file, "\\"); - strcpy(filename, "\\my.ini"); - Options::config_file= default_config_file; + char *filename; + static const char default_win_config_file_name[]= "\\my.ini"; + + if (!GetModuleFileName(NULL, windows_config_file, + sizeof(windows_config_file))) + goto err; + + filename= strrchr(windows_config_file, "\\"); + /* + Don't check for the overflow as strlen("\\my.ini") is less + then strlen("mysqlmanager") (the binary name) + */ + strcpy(filename, default_win_config_file_name); + Options::config_file= windows_config_file; } #endif |