Look for config files also in the normal Unix-style location (cherry picked from commit 445d1f780fb916f9087c0d95e7594ee5a425d43f)

This commit is contained in:
Tor Lillqvist 2009-10-21 15:49:03 +03:00 committed by Ralf Habacker
parent db7717869a
commit 22e434ab67

View file

@ -3328,7 +3328,9 @@ _dbus_get_install_root(char *prefix, int len)
the following path layout
install-root/
bin/dbus-daemon[d].exe
etc/<config-file>.conf
etc/<config-file>.conf *or* etc/dbus-1/<config-file>.conf
(the former above is what dbus4win uses, the latter above is
what a "normal" Unix-style "make install" uses)
build-root/
bin/dbus-daemon[d].exe
@ -3339,12 +3341,11 @@ _dbus_get_config_file_name(DBusString *config_file, char *s)
{
char path[MAX_PATH*2];
int path_size = sizeof(path);
int len = 4 + strlen(s);
if (!_dbus_get_install_root(path,path_size))
return FALSE;
if(len > sizeof(path)-2)
if(strlen(s) + 4 + strlen(path) > sizeof(path)-2)
return FALSE;
strcat(path,"etc\\");
strcat(path,s);
@ -3358,9 +3359,9 @@ _dbus_get_config_file_name(DBusString *config_file, char *s)
{
if (!_dbus_get_install_root(path,path_size))
return FALSE;
if(len + strlen(path) > sizeof(path)-2)
if(strlen(s) + 11 + strlen(path) > sizeof(path)-2)
return FALSE;
strcat(path,"bus\\");
strcat(path,"etc\\dbus-1\\");
strcat(path,s);
if (_dbus_file_exists(path))
@ -3368,6 +3369,21 @@ _dbus_get_config_file_name(DBusString *config_file, char *s)
if (!_dbus_string_append (config_file, path))
return FALSE;
}
else
{
if (!_dbus_get_install_root(path,path_size))
return FALSE;
if(strlen(s) + 4 + strlen(path) > sizeof(path)-2)
return FALSE;
strcat(path,"bus\\");
strcat(path,s);
if (_dbus_file_exists(path))
{
if (!_dbus_string_append (config_file, path))
return FALSE;
}
}
}
return TRUE;
}