From: Kichan Kwon Date: Wed, 7 Jun 2017 04:52:14 +0000 (+0900) Subject: Prevent underflow X-Git-Tag: submit/tizen/20170614.044733~2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F87%2F132587%2F1;p=platform%2Fcore%2Fapi%2Fruntime-info.git Prevent underflow - If val is large negative, it can be underflow - In addition, tiny optimization is applied Change-Id: I9fd7f52a60c8b7e26fc9c8a3765f17ec185429d4 Signed-off-by: Kichan Kwon --- diff --git a/src/runtime_info_usage.c b/src/runtime_info_usage.c index 811d0d0..b8e1c5e 100644 --- a/src/runtime_info_usage.c +++ b/src/runtime_info_usage.c @@ -48,8 +48,8 @@ static const runtime_info_dbus_info_s dbus_info[] = { { "ProcCpuUsage", "process cpu" }, }; -#define kBtoKiB(val) (int)MIN(((long long)(val) * 1024 / 1000), INT_MAX) -#define pagetoKiB(val) (int)MIN(((long long)(val) * 4096 / 1000), INT_MAX) +#define kBtoKiB(val) ((val) <= 0) ? 0 : (int)MIN((((long long)(val) << 10) / 1000), INT_MAX) +#define pagetoKiB(val) ((val) <= 0) ? 0 : (int)MIN((((long long)(val) << 12) / 1000), INT_MAX) /* Convert int array to GVariant("ai") */ static GVariant *runtime_info_append_args(int *args, int size)