diff -r e9b924a62a66 -r 99439b07e980 bluetooth/btstack/l2cap/l2capSAPSignalHandler.cpp --- a/bluetooth/btstack/l2cap/l2capSAPSignalHandler.cpp Wed Sep 01 12:38:54 2010 +0100 +++ b/bluetooth/btstack/l2cap/l2capSAPSignalHandler.cpp Tue Sep 14 23:28:24 2010 +0300 @@ -813,8 +813,9 @@ { LOG_FUNC // The SAP is about to be detached from this signal handler. - // Ensure no park overrides are active. + // Ensure no overrides are active. UndoOverrideParkMode(); + UndoOverrideLPM(); // Check if this SH has any unsent commands // outstanding. @@ -916,15 +917,26 @@ iSAP->Protocol().ControlPlane().ModifyPhysicalLink(EUndoOverridePark, iSAP->RemoteDev()); } } - -void CL2CapSAPSignalHandler::OverrideLPMWithTimeout() + +void CL2CapSAPSignalHandler::OverrideLPM() { LOG_FUNC // Temporarily override all low power modes. A reference to the SAP is required // to get the remote device address. if(iSAP) { - iSAP->Protocol().ControlPlane().ModifyPhysicalLink(EOverrideLPMWithTimeout, iSAP->RemoteDev()); + iSAP->Protocol().ControlPlane().ModifyPhysicalLink(EOverrideLPM, iSAP->RemoteDev()); } } - + +void CL2CapSAPSignalHandler::UndoOverrideLPM() + { + LOG_FUNC + // Remove the temporary override of all low power modes. A reference to the SAP is + // required to get the remote device address. + if(iSAP) + { + iSAP->Protocol().ControlPlane().ModifyPhysicalLink(EUndoOverrideLPM, iSAP->RemoteDev()); + } + } +