Merge branch 'develop' into 1.2.1-binlog_router_trx

This commit is contained in:
MassimilianoPinto
2015-08-12 09:35:01 +02:00

View File

@ -1575,7 +1575,11 @@ int main(int argc, char **argv)
goto return_main; goto return_main;
} }
ini_parse(cnf_file_path,cnf_preparser,NULL); if(ini_parse(cnf_file_path,cnf_preparser,NULL) != 0)
{
rc = MAXSCALE_BADCONFIG;
goto return_main;
}
/** Use the cache dir for the mysql folder of the embedded library */ /** Use the cache dir for the mysql folder of the embedded library */
@ -2076,7 +2080,7 @@ bool handle_path_arg(char** dest, char* path, char* arg, bool rd, bool wr)
* @param section Section name * @param section Section name
* @param name Parameter name * @param name Parameter name
* @param value Parameter value * @param value Parameter value
* @return 1 in all cases * @return 0 on error, 1 when successful
*/ */
static int cnf_preparser(void* data, const char* section, const char* name, const char* value) static int cnf_preparser(void* data, const char* section, const char* name, const char* value)
{ {
@ -2094,14 +2098,24 @@ static int cnf_preparser(void* data, const char* section, const char* name, cons
{ {
set_logdir(tmp); set_logdir(tmp);
} }
else
{
return 0;
}
} }
} }
else if(strcmp(name, "libdir") == 0) else if(strcmp(name, "libdir") == 0)
{ {
if(get_libdir() == default_libdir ) if(strcmp(get_libdir(),default_libdir) == 0 )
{ {
handle_path_arg(&tmp,(char*)value,NULL,true,false); if(handle_path_arg(&tmp,(char*)value,NULL,true,false))
set_libdir(tmp); {
set_libdir(tmp);
}
else
{
return 0;
}
} }
} }
else if(strcmp(name, "piddir") == 0) else if(strcmp(name, "piddir") == 0)
@ -2112,6 +2126,10 @@ static int cnf_preparser(void* data, const char* section, const char* name, cons
{ {
set_piddir(tmp); set_piddir(tmp);
} }
else
{
return 0;
}
} }
} }
else if(strcmp(name, "datadir") == 0) else if(strcmp(name, "datadir") == 0)
@ -2124,14 +2142,24 @@ static int cnf_preparser(void* data, const char* section, const char* name, cons
set_datadir(tmp); set_datadir(tmp);
datadir_defined = true; datadir_defined = true;
} }
else
{
return 0;
}
} }
} }
else if(strcmp(name, "cachedir") == 0) else if(strcmp(name, "cachedir") == 0)
{ {
if(get_cachedir() == default_cachedir) if(strcmp(get_cachedir(),default_cachedir) == 0)
{ {
handle_path_arg((char**)&tmp,(char*)value,NULL,true,false); if(handle_path_arg((char**)&tmp,(char*)value,NULL,true,false))
set_cachedir(tmp); {
set_cachedir(tmp);
}
else
{
return 0;
}
} }
} }
else if(strcmp(name, "language") == 0) else if(strcmp(name, "language") == 0)
@ -2142,6 +2170,10 @@ static int cnf_preparser(void* data, const char* section, const char* name, cons
{ {
set_langdir(tmp); set_langdir(tmp);
} }
else
{
return 0;
}
} }
} }
else if(strcmp(name, "syslog") == 0) else if(strcmp(name, "syslog") == 0)