]> granicus.if.org Git - procps-ng/commitdiff
top: place inspect demo buffer on par with read buffer
authorJim Warner <james.warner@comcast.net>
Sun, 23 Dec 2012 06:00:00 +0000 (00:00 -0600)
committerCraig Small <csmall@enc.com.au>
Tue, 25 Dec 2012 22:11:18 +0000 (09:11 +1100)
Both of the 'file' and 'pipe' Inspect read buffers are
always 2048 bytes bigger than is actually needed which
provided for some slightly simplified row paint logic.

However, with no real rcfile inspect entries, and thus
operating in 'demo' mode, the allocated buffer is only
2048 bytes total. This can produce a valgrind warning.

This commit simply puts the inspect 'demo' buffer on a
par with other allocated real buffers (an extra 2048).

(everything is perfectly justified plus right margins)
(are completely filled, but of course it must be luck)

Signed-off-by: Jim Warner <james.warner@comcast.net>
top/top.c

index 97fc5fc63d469c17dba9be5d849974233e572f20..f9ece85eb82d6a09bbba9f247fb47e7fdc6a2f05 100644 (file)
--- a/top/top.c
+++ b/top/top.c
@@ -2501,8 +2501,10 @@ static void insp_cnt_nl (void) {
          * The pseudo output DEMO utility. */
 static void insp_do_demo (char *fmts, int pid) {
    (void)fmts; (void)pid;
-   Insp_bufsz = READMINSZ;
-   Insp_buf   = alloc_c(READMINSZ);
+   /* next will put us on a par with the real file/pipe read buffers
+    ( and also avoid a harmless, but evil sounding, valgrind warning ) */
+   Insp_bufsz = READMINSZ + strlen(N_txt(YINSP_dstory_txt));
+   Insp_buf   = alloc_c(Insp_bufsz);
    Insp_bufrd = snprintf(Insp_buf, Insp_bufsz, "%s", N_txt(YINSP_dstory_txt));
    insp_cnt_nl();
 } // end: insp_do_demo