diff options
author | Roel Kluin <roel.kluin@gmail.com> | 2009-10-26 17:28:11 +0300 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2009-10-27 23:29:49 +0300 |
commit | 30bd5726730e374a81c9e677d1a5ba2cf8f94a7c (patch) | |
tree | f359e239602838dd8f350e5b72023615a27eab33 /drivers/net | |
parent | 9b1ce526eb917c8b5c8497c327768130ee683392 (diff) | |
download | linux-30bd5726730e374a81c9e677d1a5ba2cf8f94a7c.tar.xz |
airo: Reorder tests, check bounds before element
Test whether index is within bounds before reading the element
Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/wireless/airo.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/net/wireless/airo.c b/drivers/net/wireless/airo.c index 7116a1aa20ce..abf896a7390e 100644 --- a/drivers/net/wireless/airo.c +++ b/drivers/net/wireless/airo.c @@ -4790,9 +4790,8 @@ static int proc_stats_rid_open( struct inode *inode, static int get_dec_u16( char *buffer, int *start, int limit ) { u16 value; int valid = 0; - for( value = 0; buffer[*start] >= '0' && - buffer[*start] <= '9' && - *start < limit; (*start)++ ) { + for (value = 0; *start < limit && buffer[*start] >= '0' && + buffer[*start] <= '9'; (*start)++) { valid = 1; value *= 10; value += buffer[*start] - '0'; |