diff options
Diffstat (limited to 't/rt.c')
-rw-r--r-- | t/rt.c | 40 |
1 files changed, 21 insertions, 19 deletions
@@ -24,6 +24,7 @@ #include <sys/stat.h> #include <sys/wait.h> #include <errno.h> +#include <inttypes.h> #include "runcap.h" static char *progname; @@ -92,7 +93,8 @@ nl(struct runcap *rc, int stream) size_t size = 0; ssize_t res; char const *what = stream == RUNCAP_STDOUT ? "stdout" : "stderr"; - for (n = rc->rc_cap[stream].fc_nlines, width = 1; n > 0; n /= 10) + + for (n = rc->rc_cap[stream].sc_nlines, width = 1; n > 0; n /= 10) width++; printf("%s listing:\n", what); @@ -100,7 +102,7 @@ nl(struct runcap *rc, int stream) n = 1; while ((res = runcap_getline(rc, stream, &buf, &size)) > 0) { buf[res-1] = 0; - printf("% *zd: %s\n", width, n, buf); + printf("%*zu: %s\n", width, n, buf); n++; } if (res) @@ -150,8 +152,8 @@ main(int argc, char **argv) exit(1); } - rc.rc_cap[RUNCAP_STDIN].fc_size = size; - rc.rc_cap[RUNCAP_STDIN].fc_base = buffer; + rc.rc_cap[RUNCAP_STDIN].sc_size = size; + rc.rc_cap[RUNCAP_STDIN].sc_base = buffer; while (size) { ssize_t n = read(fd, buffer, size); if (n < 0) { @@ -168,10 +170,10 @@ main(int argc, char **argv) buffer += n; } close(fd); - rc.rc_cap[RUNCAP_STDIN].fc_fd = -1; + rc.rc_cap[RUNCAP_STDIN].sc_fd = -1; } else { - rc.rc_cap[RUNCAP_STDIN].fc_fd = fd; - rc.rc_cap[RUNCAP_STDIN].fc_size = 0; + rc.rc_cap[RUNCAP_STDIN].sc_fd = fd; + rc.rc_cap[RUNCAP_STDIN].sc_size = 0; } rcf |= RCF_STDIN; break; @@ -186,13 +188,13 @@ main(int argc, char **argv) break; case 'm': if (what & WA_STDOUT) { - rc.rc_cap[RUNCAP_STDOUT].fc_linemon = linemon; - rc.rc_cap[RUNCAP_STDOUT].fc_monarg = "stdout"; + rc.rc_cap[RUNCAP_STDOUT].sc_linemon = linemon; + rc.rc_cap[RUNCAP_STDOUT].sc_monarg = "stdout"; rcf |= RCF_STDOUT_LINEMON; } if (what & WA_STDERR) { - rc.rc_cap[RUNCAP_STDERR].fc_linemon = linemon; - rc.rc_cap[RUNCAP_STDERR].fc_monarg = "stderr"; + rc.rc_cap[RUNCAP_STDERR].sc_linemon = linemon; + rc.rc_cap[RUNCAP_STDERR].sc_monarg = "stderr"; rcf |= RCF_STDERR_LINEMON; } break; @@ -203,11 +205,11 @@ main(int argc, char **argv) case 's': size = strtoul(optarg, NULL, 10); if (what & WA_STDOUT) { - rc.rc_cap[RUNCAP_STDOUT].fc_size = size; + rc.rc_cap[RUNCAP_STDOUT].sc_size = size; rcf |= RCF_STDOUT_SIZE; } if (what & WA_STDERR) { - rc.rc_cap[RUNCAP_STDERR].fc_size = size; + rc.rc_cap[RUNCAP_STDERR].sc_size = size; rcf |= RCF_STDERR_SIZE; } break; @@ -248,12 +250,12 @@ main(int argc, char **argv) } else printf("unrecognized status: %d\n", rc.rc_status); - printf("stdout: %zu lines, %zu bytes\n", - rc.rc_cap[RUNCAP_STDOUT].fc_nlines, - rc.rc_cap[RUNCAP_STDOUT].fc_leng); - printf("stderr: %zu lines, %zu bytes\n", - rc.rc_cap[RUNCAP_STDERR].fc_nlines, - rc.rc_cap[RUNCAP_STDERR].fc_leng); + printf("stdout: %zu lines, %jd bytes\n", + rc.rc_cap[RUNCAP_STDOUT].sc_nlines, + (intmax_t)rc.rc_cap[RUNCAP_STDOUT].sc_leng); + printf("stderr: %zu lines, %jd bytes\n", + rc.rc_cap[RUNCAP_STDERR].sc_nlines, + (intmax_t)rc.rc_cap[RUNCAP_STDERR].sc_leng); if (numlines & WA_STDOUT) nl(&rc, RUNCAP_STDOUT); |