Fixed WiiMotes disconnecting when ES_LAUNCH is ran.

This commit is contained in:
X-tra Fear 2012-11-14 16:12:25 -05:00
parent 5ce7728b91
commit 11fc13aea4
1 changed files with 6 additions and 3 deletions

View File

@ -783,14 +783,16 @@ bool CWII_IPC_HLE_Device_es::IOCtlV(u32 _CommandAddress)
} }
else 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()); std::string tContentFile(m_ContentFile.c_str());
WII_IPC_HLE_Interface::Reset(true); WII_IPC_HLE_Interface::Reset(true);
WII_IPC_HLE_Interface::Init(); 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++) 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(false);
s_Usb->m_WiiMotes[i].Activate(true); 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); WII_IPC_HLE_Interface::SetDefaultContentFile(tContentFile);
} }
// Pass the "#002 check" // Pass the "#002 check"