diff --git a/pgadmin/utils/sysSettings.cpp b/pgadmin/utils/sysSettings.cpp index e9f270c..a4de0af 100644 --- a/pgadmin/utils/sysSettings.cpp +++ b/pgadmin/utils/sysSettings.cpp @@ -762,6 +762,7 @@ void sysSettings::SetCanonicalLanguage(const wxLanguage &lang) ////////////////////////////////////////////////////////////////////////// wxString sysSettings::GetConfigFile(configFileName cfgname) { + wxASSERT_MSG(cfgname == sysSettings::PGPASS,wxT("Handles only pgpass configuration")); if (cfgname == PGPASS) { #if wxCHECK_VERSION(2, 9, 5) @@ -769,27 +770,24 @@ wxString sysSettings::GetConfigFile(configFileName cfgname) #else wxStandardPaths stdp; #endif - wxString fname = stdp.GetUserConfigDir(); + wxString fname; + bool bpsfile = wxGetEnv(wxT("PGPASSFILE"),&fname); + if (!bpsfile) + { + fname = stdp.GetUserConfigDir(); #ifdef WIN32 - fname += wxT("\\postgresql"); - if (!wxDirExists(fname)) + fname += wxT("\\postgresql"); + if (!wxDirExists(fname)) wxMkdir(fname); - switch(cfgname) - { - case PGPASS: - fname += wxT("\\pgpass.conf"); - break; + fname += wxT("\\pgpass.conf"); } #else - switch(cfgname) - { - case PGPASS: - fname += wxT("/.pgpass"); - break; + fname += wxT("/.pgpass"); } #endif return fname; } + return wxT(""); }