diff options
| author | comex <comexk@gmail.com> | 2014-11-15 23:52:19 -0500 |
|---|---|---|
| committer | comex <comexk@gmail.com> | 2014-11-15 23:52:19 -0500 |
| commit | 37b14bdec99c70aa47e9bf79fa690d6ce246eda4 (patch) | |
| tree | dc29c2a4105998155a34f267415df2296e6a0e29 /Source/Core/DolphinWX/NetWindow.cpp | |
| parent | 8dbef4e987bd7ce63b1a94185d1d8efd28e006f9 (diff) | |
Fix wxCommandEvent/wxThreadEvent subclass mismatch
Regression by 3fed975bac11956ffc4d3eae86c928c7e0c921db caused netplay to
crash on OS X. While I'm at it, fix the long-standing "unsafe i guess"
AddPendingEvent, since we depend on wx 3 now...
Diffstat (limited to 'Source/Core/DolphinWX/NetWindow.cpp')
| -rw-r--r-- | Source/Core/DolphinWX/NetWindow.cpp | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/Source/Core/DolphinWX/NetWindow.cpp b/Source/Core/DolphinWX/NetWindow.cpp index 56fb89e51c..7e8f08e507 100644 --- a/Source/Core/DolphinWX/NetWindow.cpp +++ b/Source/Core/DolphinWX/NetWindow.cpp @@ -474,7 +474,7 @@ void NetPlayDiag::StopGame() // NetPlayUI methods called from ---NETPLAY--- thread void NetPlayDiag::Update() { - wxCommandEvent evt(wxEVT_THREAD, 1); + wxThreadEvent evt(wxEVT_THREAD, 1); GetEventHandler()->AddPendingEvent(evt); } @@ -487,15 +487,14 @@ void NetPlayDiag::AppendChat(const std::string& msg) void NetPlayDiag::OnMsgChangeGame(const std::string& filename) { - wxCommandEvent evt(wxEVT_THREAD, NP_GUI_EVT_CHANGE_GAME); - // TODO: using a wxString in AddPendingEvent from another thread is unsafe i guess? - evt.SetString(StrToWxStr(filename)); - GetEventHandler()->AddPendingEvent(evt); + wxThreadEvent* evt = new wxThreadEvent(wxEVT_THREAD, NP_GUI_EVT_CHANGE_GAME); + evt->SetString(StrToWxStr(filename)); + GetEventHandler()->QueueEvent(evt); } void NetPlayDiag::OnMsgStartGame() { - wxCommandEvent evt(wxEVT_THREAD, NP_GUI_EVT_START_GAME); + wxThreadEvent evt(wxEVT_THREAD, NP_GUI_EVT_START_GAME); GetEventHandler()->AddPendingEvent(evt); if (m_start_btn) m_start_btn->Disable(); @@ -504,7 +503,7 @@ void NetPlayDiag::OnMsgStartGame() void NetPlayDiag::OnMsgStopGame() { - wxCommandEvent evt(wxEVT_THREAD, NP_GUI_EVT_STOP_GAME); + wxThreadEvent evt(wxEVT_THREAD, NP_GUI_EVT_STOP_GAME); GetEventHandler()->AddPendingEvent(evt); if (m_start_btn) m_start_btn->Enable(); |
