From 65eb98997977ba66bf96aff5e0cc8494ea03cdce Mon Sep 17 00:00:00 2001 From: mdw Date: Mon, 27 Sep 2004 13:45:40 +0000 Subject: [PATCH] Drag into the 21st century. --- .links | 2 ++ src/pres_curses.c | 21 +++++++++++++++++++-- src/pres_plain.c | 5 +++-- src/sw_build.c | 2 +- src/sw_rsh.c | 6 +++--- sw-info.5 | 2 +- 6 files changed, 29 insertions(+), 9 deletions(-) diff --git a/.links b/.links index 54e724f..a1b5b8f 100644 --- a/.links +++ b/.links @@ -2,3 +2,5 @@ missing mkinstalldirs install-sh COPYING +config.sub +config.guess diff --git a/src/pres_curses.c b/src/pres_curses.c index 38876e8..a4f3b3f 100644 --- a/src/pres_curses.c +++ b/src/pres_curses.c @@ -1,6 +1,6 @@ /* -*-c-*- * - * $Id: pres_curses.c,v 1.7 2004/04/08 01:52:19 mdw Exp $ + * $Id$ * * Curses-based output presentation * @@ -259,8 +259,25 @@ fail_0: void curses_output(archent *e, const char *p, size_t sz) { cwin *c = e->pres; + int y, x; while (sz) { - waddch(c->w, *p); + switch (*p) { + case '\r': + getyx(c->w, y, x); + wmove(c->w, y, 0); + break; + case '\n': + getyx(c->w, y, x); + if (y < c->height - 1) + y++; + else + scroll(c->w); + wmove(c->w, y, 0); + break; + default: + waddch(c->w, *p); + break; + } p++; sz--; } diff --git a/src/pres_plain.c b/src/pres_plain.c index 9c1e275..449d2dd 100644 --- a/src/pres_plain.c +++ b/src/pres_plain.c @@ -1,6 +1,6 @@ /* -*-c-*- * - * $Id: pres_plain.c,v 1.3 2004/04/08 01:52:19 mdw Exp $ + * $Id$ * * Plain output style for remote builds * @@ -44,7 +44,7 @@ /* --- @line@ --- */ -static void line(char *s, void *p) +static void line(char *s, size_t len, void *p) { archent *e = p; if (s) @@ -79,6 +79,7 @@ void plain_output(archent *e, const char *p, size_t sz) void plain_close(archent *e, int ok, const char *summ) { lbuf_close(e->pres); + lbuf_destroy(e->pres); if (!ok) printf("%s: %s\n", e->arch, summ); } diff --git a/src/sw_build.c b/src/sw_build.c index 717ca06..d8ec6ab 100644 --- a/src/sw_build.c +++ b/src/sw_build.c @@ -487,7 +487,7 @@ static void putf(sw_remote *r, FILE *fp, const char *fmt, ...) va_list ap; dstr d = DSTR_INIT; va_start(ap, fmt); - dstr_vputf(&d, fmt, ap); + dstr_vputf(&d, fmt, &ap); va_end(ap); if (r) pksend(r, PKTYPE_DATA, d.buf, d.len); diff --git a/src/sw_rsh.c b/src/sw_rsh.c index 45815f8..785da7d 100644 --- a/src/sw_rsh.c +++ b/src/sw_rsh.c @@ -1,6 +1,6 @@ /* -*-c-*- * - * $Id: sw_rsh.c,v 1.8 2004/04/08 01:52:19 mdw Exp $ + * $Id$ * * Run remote commands * @@ -313,7 +313,7 @@ void swwait(sw_remote *r, int status) void swvprintf(sw_remote *r, const char *format, va_list ap) { dstr d = DSTR_INIT; - dstr_vputf(&d, format, ap); + dstr_vputf(&d, format, &ap); pksend(r, PKTYPE_DATA, d.buf, d.len); dstr_destroy(&d); } @@ -356,7 +356,7 @@ void swdie(sw_remote *r, int status, const char *format, ...) va_start(ap, format); dstr_putf(&d, "%s [remote]: ", QUIS); - dstr_vputf(&d, format, ap); + dstr_vputf(&d, format, &ap); dstr_putc(&d, '\n'); dstr_putz(&d); va_end(ap); diff --git a/sw-info.5 b/sw-info.5 index 3e1b073..6a04434 100644 --- a/sw-info.5 +++ b/sw-info.5 @@ -81,7 +81,7 @@ has the form .I name .RB [ = ] .I value -.in -5in +.in -5n .sp 1 where .I name -- 2.11.0