# HG changeset patch # Parent 2575f70d251c91c3175f20a644bd9fe6602b96ce # User Tommaso Pecorella # Date 1376763190 -7200 Bug 1584 - Old Association Request Timeouts are not canceled diff --git a/src/wifi/model/sta-wifi-mac.cc b/src/wifi/model/sta-wifi-mac.cc --- a/src/wifi/model/sta-wifi-mac.cc +++ b/src/wifi/model/sta-wifi-mac.cc @@ -183,6 +183,10 @@ // association or not. m_dca->Queue (packet, hdr); + if (m_assocRequestEvent.IsRunning ()) + { + m_assocRequestEvent.Cancel (); + } m_probeRequestEvent = Simulator::Schedule (m_probeRequestTimeout, &StaWifiMac::ProbeRequestTimeout, this); } @@ -216,6 +220,10 @@ // association or not. m_dca->Queue (packet, hdr); + if (m_assocRequestEvent.IsRunning ()) + { + m_assocRequestEvent.Cancel (); + } m_assocRequestEvent = Simulator::Schedule (m_assocRequestTimeout, &StaWifiMac::AssocRequestTimeout, this); } @@ -283,6 +291,10 @@ NS_LOG_FUNCTION (this); if (m_beaconWatchdogEnd > Simulator::Now ()) { + if (m_beaconWatchdog.IsRunning ()) + { + m_beaconWatchdog.Cancel (); + } m_beaconWatchdog = Simulator::Schedule (m_beaconWatchdogEnd - Simulator::Now (), &StaWifiMac::MissedBeacons, this); return;