From fb0deda1c2886d837b514088bff0e2acfe8fa11c Mon Sep 17 00:00:00 2001 From: Dan Carpenter Date: Mon, 8 Mar 2010 16:39:24 +0300 Subject: [PATCH] --- yaml --- r: 196923 b: refs/heads/master c: 4dbb8e57c1ef23e5822b85a646b4ba31a98b9864 h: refs/heads/master i: 196921: 89d4657ff672591604109ab85f5bba8f614eb10f 196919: 670199c0b6e9bd5d55f8e825e367aa0d03d096d2 v: v3 --- [refs] | 2 +- trunk/drivers/staging/rt2860/sta_ioctl.c | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/[refs] b/[refs] index e8632a2c5bd4..d8c17ed7321e 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 1e1d25cb0d248d58ac8e586ebb23bf2f6dc55c0b +refs/heads/master: 4dbb8e57c1ef23e5822b85a646b4ba31a98b9864 diff --git a/trunk/drivers/staging/rt2860/sta_ioctl.c b/trunk/drivers/staging/rt2860/sta_ioctl.c index de4b6277baee..33a6939cf2ae 100644 --- a/trunk/drivers/staging/rt2860/sta_ioctl.c +++ b/trunk/drivers/staging/rt2860/sta_ioctl.c @@ -1047,8 +1047,7 @@ int rt_ioctl_giwscan(struct net_device *dev, if (tmpRate == 0x6c && pAdapter->ScanTab.BssEntry[i].HtCapabilityLen > 0) { - int rate_count = - sizeof(ralinkrate) / sizeof(__s32); + int rate_count = ARRAY_SIZE(ralinkrate); struct rt_ht_cap_info capInfo = pAdapter->ScanTab.BssEntry[i].HtCapability. HtCapInfo; @@ -1061,10 +1060,11 @@ int rt_ioctl_giwscan(struct net_device *dev, int rate_index = 12 + ((u8)capInfo.ChannelWidth * 24) + ((u8)shortGI * 48) + ((u8)maxMCS); + if (rate_index < 0) rate_index = 0; - if (rate_index > rate_count) - rate_index = rate_count; + if (rate_index >= rate_count) + rate_index = rate_count - 1; iwe.u.bitrate.value = ralinkrate[rate_index] * 500000; } @@ -2338,7 +2338,7 @@ int rt_ioctl_giwrate(struct net_device *dev, */ GET_PAD_FROM_NET_DEV(pAd, dev); - rate_count = sizeof(ralinkrate) / sizeof(__s32); + rate_count = ARRAY_SIZE(ralinkrate); /*check if the interface is down */ if (!RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_INTERRUPT_IN_USE)) { DBGPRINT(RT_DEBUG_TRACE, ("INFO::Network is down!\n")); @@ -2369,8 +2369,8 @@ int rt_ioctl_giwrate(struct net_device *dev, if (rate_index < 0) rate_index = 0; - if (rate_index > rate_count) - rate_index = rate_count; + if (rate_index >= rate_count) + rate_index = rate_count - 1; wrqu->bitrate.value = ralinkrate[rate_index] * 500000; wrqu->bitrate.disabled = 0;