diff options
author | armadefuego@gmail.com <armadefuego@gmail.com> | 2011-03-22 09:49:15 -0700 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-03-23 15:22:04 -0400 |
commit | a3ad38e87eead6ce748c6e4eec0571ce53b5a0c2 (patch) | |
tree | 903f4ebdba3785fca05c73c90d186f58431ed22e /drivers | |
parent | be36cacdddcc119ef7b33ae0b91631c3535a75ca (diff) |
orinoco: Clear dangling pointer on hardware busy
On hardware busy the scan request pointer should be cleared, as higher
levels will release. This avoids a crash when that pointer is
erroneously used later.
Signed-off-by: Joseph J. Gunn <armadefuego@yahoo.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/wireless/orinoco/cfg.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/wireless/orinoco/cfg.c b/drivers/net/wireless/orinoco/cfg.c index 09fae2f0ea08..736bbb9bd1d0 100644 --- a/drivers/net/wireless/orinoco/cfg.c +++ b/drivers/net/wireless/orinoco/cfg.c @@ -153,6 +153,9 @@ static int orinoco_scan(struct wiphy *wiphy, struct net_device *dev, priv->scan_request = request; err = orinoco_hw_trigger_scan(priv, request->ssids); + /* On error the we aren't processing the request */ + if (err) + priv->scan_request = NULL; return err; } |