Fix Host_GetKeyState in a more effective way.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7308 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
Glenn Rice
2011-03-06 04:31:43 +00:00
parent 9095dad009
commit ec7e160bdc
4 changed files with 15 additions and 20 deletions

View File

@ -1021,6 +1021,11 @@ void CFrame::DoStop()
{
if (Core::GetState() != Core::CORE_UNINITIALIZED)
{
#if defined __WXGTK__
wxMutexGuiLeave();
std::lock_guard<std::mutex> lk(keystate_lock);
wxMutexGuiEnter();
#endif
// Ask for confirmation in case the user accidentally clicked Stop / Escape
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bConfirmStop)
{
@ -1043,11 +1048,6 @@ void CFrame::DoStop()
if(Frame::IsPlayingInput() || Frame::IsRecordingInput())
Frame::EndPlayInput(false);
#ifdef __WXGTK__
// Make sure the app doesn't hang waiting on a keystate check
keystate_event.Set();
#endif
BootManager::Stop();
#if defined(HAVE_XDG_SCREENSAVER) && HAVE_XDG_SCREENSAVER