diff --git a/net/wireless/nl80211.c b/net/wireless/nl80211.c index 0d7db10c782f1fc6cc189614de94743a39b020af..c503e96bfd5a128265d1a30b287299f9bb0d6f2d 100644 --- a/net/wireless/nl80211.c +++ b/net/wireless/nl80211.c @@ -5836,10 +5836,8 @@ static int nl80211_set_reg(struct sk_buff *skb, struct genl_info *info) } } - r = set_regdom(rd, REGD_SOURCE_CRDA); - /* set_regdom took ownership */ - rd = NULL; - + /* set_regdom takes ownership of rd */ + return set_regdom(rd, REGD_SOURCE_CRDA); bad_reg: kfree(rd); return r;