Apply patch from Benoît Dejean <bnet@ifrance.com> to fix overflow issues
2003-12-23 Bastien Nocera <hadess@hadess.net> * cpu.c: (glibtop_get_cpu_s): * glibtop_server.h: * loadavg.c: (glibtop_get_loadavg_s): * mem.c: (glibtop_get_mem_s): * netload.c: (glibtop_get_netload_s): * prockernel.c: (glibtop_get_proc_kernel_s): * procmem.c: (glibtop_get_proc_mem_s): * procsegment.c: (glibtop_get_proc_segment_s): * procsignal.c: (glibtop_get_proc_signal_s): * proctime.c: (glibtop_get_proc_time_s): * procuid.c: (glibtop_get_proc_uid_s): * swap.c: (glibtop_get_swap_s): Apply patch from Benoît Dejean <bnet@ifrance.com> to fix overflow issues using strtol (Closes: #129881)
This commit is contained in:
committed by
Bastien Nocera
parent
84962b2301
commit
9968f74a05
@@ -57,17 +57,17 @@ skip_line (const char *p)
|
||||
return (char *) ++p;
|
||||
}
|
||||
|
||||
static inline unsigned long
|
||||
static inline unsigned long long
|
||||
get_scaled(const char *buffer, const char *key)
|
||||
{
|
||||
const char *ptr;
|
||||
char *next;
|
||||
unsigned long value = 0;
|
||||
unsigned long long value = 0;
|
||||
|
||||
if ((ptr = strstr(buffer, key)))
|
||||
{
|
||||
ptr += strlen(key);
|
||||
value = strtoul(ptr, &next, 0);
|
||||
value = strtoull(ptr, &next, 0);
|
||||
if (strchr(next, 'k'))
|
||||
value *= 1024;
|
||||
else if (strchr(next, 'M'))
|
||||
|
Reference in New Issue
Block a user