[PATCH v2] top: fix and merge code to parse /proc/meminfo
Bartosz Gołaszewski
bartekgola at gmail.com
Mon Jul 28 15:52:41 UTC 2014
2014-07-28 17:25 GMT+02:00 Timo Teras <timo.teras at iki.fi>:
> So something like:
>
> diff --git a/procps/top.c b/procps/top.c
> index 62f9421..119c32b 100644
> --- a/procps/top.c
> +++ b/procps/top.c
> @@ -536,7 +536,7 @@ static void parse_meminfo(unsigned long meminfo[MI_MAX])
> FILE *f;
> int i;
>
> - memset(meminfo, 0, sizeof(meminfo));
> + memset(meminfo, 0, MI_MAX*sizeof(meminfo[0]));
> f = xfopen_for_read("meminfo");
> while (fgets(buf, sizeof(buf), f) != NULL) {
> char *c = strchr(buf, ':');
>
> Would be needed to fix it.
This should be memset(meminfo, 0, MI_MAX*sizeof(unsigned long))
otherwise you're taking the size of a pointer.
Best regards,
Bartosz Gołaszewski
More information about the busybox
mailing list