diff options
Diffstat (limited to 'procps/watch.c')
-rw-r--r-- | procps/watch.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/procps/watch.c b/procps/watch.c index 2ad0564cd..b2adcd5ce 100644 --- a/procps/watch.c +++ b/procps/watch.c | |||
@@ -28,7 +28,7 @@ int watch_main(int argc, char **argv) | |||
28 | { | 28 | { |
29 | unsigned opt; | 29 | unsigned opt; |
30 | unsigned period = 2; | 30 | unsigned period = 2; |
31 | unsigned cmdlen = 1; // 1 for terminal NUL | 31 | unsigned cmdlen; |
32 | char *header = NULL; | 32 | char *header = NULL; |
33 | char *cmd; | 33 | char *cmd; |
34 | char *tmp; | 34 | char *tmp; |
@@ -42,6 +42,7 @@ int watch_main(int argc, char **argv) | |||
42 | argv += optind; | 42 | argv += optind; |
43 | 43 | ||
44 | p = argv; | 44 | p = argv; |
45 | cmdlen = 1; // 1 for terminal NUL | ||
45 | while (*p) | 46 | while (*p) |
46 | cmdlen += strlen(*p++) + 1; | 47 | cmdlen += strlen(*p++) + 1; |
47 | tmp = cmd = xmalloc(cmdlen); | 48 | tmp = cmd = xmalloc(cmdlen); |
@@ -58,7 +59,7 @@ int watch_main(int argc, char **argv) | |||
58 | char *thyme; | 59 | char *thyme; |
59 | time_t t; | 60 | time_t t; |
60 | 61 | ||
61 | get_terminal_width_height(STDOUT_FILENO, &width, 0); | 62 | get_terminal_width_height(STDIN_FILENO, &width, 0); |
62 | header = xrealloc(header, width--); | 63 | header = xrealloc(header, width--); |
63 | // '%-*s' pads header with spaces to the full width | 64 | // '%-*s' pads header with spaces to the full width |
64 | snprintf(header, width, "Every %ds: %-*s", period, width, cmd); | 65 | snprintf(header, width, "Every %ds: %-*s", period, width, cmd); |