From 83edaf3fd67f486381aaed6a22f5650b6f3e89f7 Mon Sep 17 00:00:00 2001 From: Denis Vlasenko Date: Sun, 19 Nov 2006 17:33:54 +0000 Subject: [PATCH] svlogd: log full lines to stderr too, and also stop using stdio for that --- runit/svlogd.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/runit/svlogd.c b/runit/svlogd.c index 8e012d2..b2fbe51 100644 --- a/runit/svlogd.c +++ b/runit/svlogd.c @@ -830,12 +830,8 @@ int svlogd_main(int argc, char **argv) if (ld->fddir == -1) continue; if (ld->inst) logmatch(ld); - if (ld->matcherr == 'e') { - fprintf(stderr, "%.*s%s", - printlen, line, - (ch != '\n') ? "...\n" : "" - ); - } + if (ld->matcherr == 'e') + full_write(2, line, printlen); if (ld->match != '+') continue; buffer_pwrite(i, line, printlen); } @@ -859,6 +855,8 @@ int svlogd_main(int argc, char **argv) /* linelen == no of chars incl. '\n' (or == stdin_cnt) */ for (i = 0; i < dirn; ++i) { if (dir[i].fddir == -1) continue; + if (dir[i].matcherr == 'e') + full_write(2, lineptr, linelen); if (dir[i].match != '+') continue; buffer_pwrite(i, lineptr, linelen); } -- 2.7.4