diff options
author | Eric Andersen | 2003-09-15 08:11:29 +0000 |
---|---|---|
committer | Eric Andersen | 2003-09-15 08:11:29 +0000 |
commit | 2205c84de4c8cc75e3446936f7d93e32391f4aed (patch) | |
tree | c616073152862564cf2181b6c7c2619de7b470cf | |
parent | 1393a39df491307314679fbc7026eaba60a9efb2 (diff) | |
download | busybox-2205c84de4c8cc75e3446936f7d93e32391f4aed.zip busybox-2205c84de4c8cc75e3446936f7d93e32391f4aed.tar.gz |
comparison was always false due to limited range of data types.
Carefully cast to unsigned long long prior to multiply to get
the expected result.
-rw-r--r-- | init/init.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/init/init.c b/init/init.c index 8da358c..85792c9 100644 --- a/init/init.c +++ b/init/init.c @@ -333,7 +333,7 @@ static unsigned int check_free_memory(void) s--; } result = (info.totalram >> s) + (info.totalswap >> s); - if ((unsigned long long) (result * u) > UINT_MAX) { + if (((unsigned long long)result * (unsigned long long)u) > UINT_MAX) { return(UINT_MAX); } else { return(result * u); |