Page MenuHomeFreeBSD

D5544.id.diff
No OneTemporary

D5544.id.diff

Index: head/sys/dev/usb/wlan/if_rum.c
===================================================================
--- head/sys/dev/usb/wlan/if_rum.c
+++ head/sys/dev/usb/wlan/if_rum.c
@@ -819,7 +819,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",
@@ -872,6 +872,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:
@@ -879,13 +880,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, Oct 26, 4:13 PM (4 h, 42 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
24224768
Default Alt Text
D5544.id.diff (879 B)

Event Timeline