nl80211: fix compiler warning
authorJohannes Berg <johannes.berg@intel.com>
Thu, 10 Nov 2011 08:44:46 +0000 (09:44 +0100)
committerJohn W. Linville <linville@tuxdriver.com>
Fri, 11 Nov 2011 17:32:51 +0000 (12:32 -0500)
John reported the following warning:

net/wireless/nl80211.c: In function ‘nl80211_tx_mgmt’:
net/wireless/nl80211.c:5286:8: warning: ‘hdr’ may be used uninitialized in this function

Evidently, his version of gcc isn't able to see that
when "msg" is initialized, "hdr" must also be. My
gcc, 4.6.1, can actually see that and doesn't warn.
Simply initialize the variable to NULL. That means
if the compiler was ever right we'll crash though so
isn't really optimal since it may hide warnings from
the compiler when somebody modifies this code in the
future.

Reported-by: John Linville <linville@tuxdriver.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
net/wireless/nl80211.c

index 864fcb6f217ee7fce782e146040470363bfb046e..258fb881c8e366426dde11bf33a407dab1309bed 100644 (file)
@@ -5283,7 +5283,7 @@ static int nl80211_tx_mgmt(struct sk_buff *skb, struct genl_info *info)
        bool channel_type_valid = false;
        u32 freq;
        int err;
-       void *hdr;
+       void *hdr = NULL;
        u64 cookie;
        struct sk_buff *msg = NULL;
        unsigned int wait = 0;