Fixes NULL pointer reference that it's occurred when the state is

changed to RUN because ic->ic_newassoc isn't set anywhere now.  In the
previous bwi_newassoc() is used to initialize AMRR rate routines.

Tested by:	Warren Block <wblock at wonkity.com>
MFC after:	3 days
This commit is contained in:
Weongyo Jeong 2010-06-29 21:52:40 +00:00
parent fab216aaa0
commit 68cd814a8a

View File

@ -1774,7 +1774,6 @@ bwi_newstate(struct ieee80211vap *vap, enum ieee80211_state nstate, int arg)
enum ieee80211_state ostate = vap->iv_state;
struct bwi_softc *sc = ifp->if_softc;
struct bwi_mac *mac;
struct ieee80211_node *ni = vap->iv_bss;
int error;
BWI_LOCK(sc);
@ -1822,10 +1821,6 @@ bwi_newstate(struct ieee80211vap *vap, enum ieee80211_state nstate, int arg)
#else
sc->sc_txpwrcb_type = BWI_TXPWR_CALIB;
#endif
if (vap->iv_opmode == IEEE80211_M_STA) {
/* fake a join to init the tx rate */
ic->ic_newassoc(ni, 1);
}
callout_reset(&sc->sc_calib_ch, hz, bwi_calibrate, sc);
}