summaryrefslogtreecommitdiff
path: root/Source
diff options
context:
space:
mode:
authorrog <rdragoon@optonline.net>2012-11-14 17:27:46 -0500
committerrog <rdragoon@optonline.net>2012-11-14 17:27:46 -0500
commit25a1979b22a840b880ea3bd9b2ffbb1228beed78 (patch)
treec551799e68138ddcb44881a66b2488402d669ffa /Source
parentf5a3379d712a1a71e5f196aa9d95e1deccec4c6c (diff)
parent11fc13aea46dabad49e9fccc4412307ee0398319 (diff)
Merge https://code.google.com/r/xtrafear-dolphin-emu
Diffstat (limited to 'Source')
-rw-r--r--Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_es.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_es.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_es.cpp
index ae389d7b69..198e54b2f2 100644
--- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_es.cpp
+++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_es.cpp
@@ -783,14 +783,16 @@ bool CWII_IPC_HLE_Device_es::IOCtlV(u32 _CommandAddress)
}
else
{
+ static CWII_IPC_HLE_Device_usb_oh1_57e_305* s_Usb = GetUsbPointer();
+ bool* wiiMoteConnected = new bool[s_Usb->m_WiiMotes.size()];
+ for(int i = 0; i < s_Usb->m_WiiMotes.size(); i++) wiiMoteConnected[i] = s_Usb->m_WiiMotes[i].IsConnected();
+
std::string tContentFile(m_ContentFile.c_str());
WII_IPC_HLE_Interface::Reset(true);
WII_IPC_HLE_Interface::Init();
-
- static CWII_IPC_HLE_Device_usb_oh1_57e_305* s_Usb = GetUsbPointer();
for (unsigned int i = 0; i < s_Usb->m_WiiMotes.size(); i++)
{
- if (s_Usb->m_WiiMotes[i].IsConnected())
+ if (wiiMoteConnected[i])
{
s_Usb->m_WiiMotes[i].Activate(false);
s_Usb->m_WiiMotes[i].Activate(true);
@@ -801,6 +803,7 @@ bool CWII_IPC_HLE_Device_es::IOCtlV(u32 _CommandAddress)
}
}
+ delete wiiMoteConnected;
WII_IPC_HLE_Interface::SetDefaultContentFile(tContentFile);
}
// Pass the "#002 check"