diff --git a/Source/Core/Core/Src/HW/WiimoteReal/IOdarwin.mm b/Source/Core/Core/Src/HW/WiimoteReal/IOdarwin.mm index f0d285b274..8596b12080 100644 --- a/Source/Core/Core/Src/HW/WiimoteReal/IOdarwin.mm +++ b/Source/Core/Core/Src/HW/WiimoteReal/IOdarwin.mm @@ -210,11 +210,6 @@ bool Wiimote::Connect() return false; } - // As of 10.8 these need explicit retaining or writing to the wiimote has a very high - // chance of crashing and burning. - [ichan retain]; - [cchan retain]; - NOTICE_LOG(WIIMOTE, "Connected to wiimote %i at %s", index + 1, [[btd addressString] UTF8String]); @@ -227,15 +222,15 @@ bool Wiimote::Connect() // Disconnect a wiimote. void Wiimote::Disconnect() { - if (btd != NULL) - [btd closeConnection]; - if (ichan != NULL) [ichan release]; if (cchan != NULL) [cchan release]; + if (btd != NULL) + [btd closeConnection]; + btd = NULL; cchan = NULL; ichan = NULL;