added check if "file open dialog" changes the working directory. i dunno why but some times the file open dialog changes my working directory... the code is for further investigations

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2408 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
fires.gc 2009-02-24 07:18:08 +00:00
parent f4f0fc9c00
commit 595dc42dcb
3 changed files with 20 additions and 0 deletions

View File

@ -547,4 +547,10 @@ void GetCurrentDirectory(std::string& _rDirectory)
_rDirectory = getcwd(tmpBuffer, MAX_PATH); _rDirectory = getcwd(tmpBuffer, MAX_PATH);
} }
bool SetCurrentDirectory(const std::string& _rDirectory)
{
return chdir(_rDirectory.c_str()) == 0;
}
} // namespace } // namespace

View File

@ -55,6 +55,7 @@ u32 ScanDirectoryTree(const std::string& _Directory, FSTEntry& parentEntry);
bool DeleteDirRecursively(const std::string& _Directory); bool DeleteDirRecursively(const std::string& _Directory);
void GetCurrentDirectory(std::string& _rDirectory); void GetCurrentDirectory(std::string& _rDirectory);
bool SetCurrentDirectory(const std::string& _rDirectory);
} // namespace } // namespace

View File

@ -407,6 +407,9 @@ void CFrame::OnOpen(wxCommandEvent& WXUNUSED (event))
void CFrame::DoOpen(bool Boot) void CFrame::DoOpen(bool Boot)
{ {
std::string currentDir;
File::GetCurrentDirectory(currentDir);
wxString path = wxFileSelector( wxString path = wxFileSelector(
_T("Select the file to load"), _T("Select the file to load"),
wxEmptyString, wxEmptyString, wxEmptyString, wxEmptyString, wxEmptyString, wxEmptyString,
@ -423,6 +426,16 @@ void CFrame::DoOpen(bool Boot)
return; return;
} }
std::string currentDir2;
File::GetCurrentDirectory(currentDir2);
if (currentDir != currentDir2)
{
PanicAlert("Current dir changed has been changeg from %s to %s after wxFileSelector!",currentDir.c_str(),currentDir2.c_str());
File::SetCurrentDirectory(currentDir);
}
// Should we boot a new game or just change the disc? // Should we boot a new game or just change the disc?
if(Boot) if(Boot)
{ {