Page MenuHomeFreeBSD

D5544.id14054.diff
No OneTemporary

D5544.id14054.diff

Index: sys/dev/usb/wlan/if_rum.c
===================================================================
--- sys/dev/usb/wlan/if_rum.c
+++ sys/dev/usb/wlan/if_rum.c
@@ -820,7 +820,7 @@
const struct ieee80211_txparam *tp;
enum ieee80211_state ostate;
struct ieee80211_node *ni;
- int ret;
+ int ret = 0;
ostate = vap->iv_state;
DPRINTF("%s -> %s\n",
@@ -873,6 +873,7 @@
tp = &vap->iv_txparms[ieee80211_chan2mode(ic->ic_curchan)];
if (tp->ucastrate == IEEE80211_FIXED_RATE_NONE)
rum_ratectl_start(sc, ni);
+run_fail:
ieee80211_free_node(ni);
break;
default:
@@ -880,13 +881,7 @@
}
RUM_UNLOCK(sc);
IEEE80211_LOCK(ic);
- return (rvp->newstate(vap, nstate, arg));
-
-run_fail:
- RUM_UNLOCK(sc);
- IEEE80211_LOCK(ic);
- ieee80211_free_node(ni);
- return ret;
+ return (ret == 0 ? rvp->newstate(vap, nstate, arg) : ret);
}
static void

File Metadata

Mime Type
text/plain
Expires
Sun, Feb 23, 1:41 PM (9 h, 52 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
16798453
Default Alt Text
D5544.id14054.diff (864 B)

Event Timeline