From: Phil Sutter
quoted hunk ↗ jump to hunk
Sent: 23 June 2016 18:34
By directly comparing the value of both unsigned variables, casting to
signed becomes unnecessary.
This also fixes for compiling with older versions of gcc (at least
<=3.4.6) which emit the following warning:
| ifstat.c: In function `update_db':
| ifstat.c:542: warning: comparison is always false due to limited range of data type
Signed-off-by: Phil Sutter <phil@nwl.cc>
---
misc/ifstat.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/misc/ifstat.c b/misc/ifstat.c
index abbb4e732fcef..9a44da487599e 100644
--- a/misc/ifstat.c
+++ b/misc/ifstat.c
@@ -539,7 +539,7 @@ static void update_db(int interval)
int i;
for (i = 0; i < MAXS; i++) {
- if ((long)(h1->ival[i] - n->ival[i]) < 0) {
+ if (h1->ival[i] < n->ival[i]) {
memset(n->ival, 0, sizeof(n->ival));
break;
That isn't the same check.
The original code is using modulo arithmetic.
David