Fix Wiimotes not reconnecting on button press

5.0-56 broke reconnecting a Wiimote on button press; this is because
data reporting was now always stopped for real Wii remotes on
disconnect, making it impossible to know a button was pressed in the
first place (to reconnect the Wiimote).

This semi-reverts to the previous behaviour, where data reporting is
never stopped.

(Also, control channels now go through WiimoteEmu, just like before,
to make sure some things are reset on disconnection.)

Hopefully fixes issue 9711.
This commit is contained in:
Léo Lam
2016-07-23 11:02:15 +02:00
parent 11fea215f1
commit 7c3a3ce46d
4 changed files with 6 additions and 8 deletions

View File

@ -71,9 +71,7 @@ void Pause()
// An L2CAP packet is passed from the Core to the Wiimote on the HID CONTROL channel.
void ControlChannel(int number, u16 channel_id, const void* data, u32 size)
{
if (WIIMOTE_SRC_REAL & g_wiimote_sources[number])
WiimoteReal::ControlChannel(number, channel_id, data, size);
else if (WIIMOTE_SRC_HYBRID & g_wiimote_sources[number])
if (WIIMOTE_SRC_HYBRID & g_wiimote_sources[number])
static_cast<WiimoteEmu::Wiimote*>(s_config.GetController(number))
->ControlChannel(channel_id, data, size);
}