X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~mdw/git/mLib/blobdiff_plain/c05c6d833a613f1f8808aa8ed86058ab86f8e64c..0bfb14313759dbbb677c373eac9b980972cf498d:/dstr.c diff --git a/dstr.c b/dstr.c index 6304351..fe65ebe 100644 --- a/dstr.c +++ b/dstr.c @@ -1,6 +1,6 @@ /* -*-c-*- * - * $Id: dstr.c,v 1.6 1999/05/21 08:38:33 mdw Exp $ + * $Id: dstr.c,v 1.7 1999/05/21 22:14:30 mdw Exp $ * * Handle dynamically growing strings * @@ -30,6 +30,9 @@ /*----- Revision history --------------------------------------------------* * * $Log: dstr.c,v $ + * Revision 1.7 1999/05/21 22:14:30 mdw + * Take advantage of the new dynamic string macros. + * * Revision 1.6 1999/05/21 08:38:33 mdw * Implement some more functions in terms of macros. * @@ -205,11 +208,11 @@ int dstr_vputf(dstr *d, const char *p, va_list ap) const char *q = p; size_t n = d->len; size_t sz; + dstr dd = DSTR_INIT; while (*p) { unsigned f; int wd, prec; - dstr dd; enum { f_short = 1, @@ -233,7 +236,6 @@ int dstr_vputf(dstr *d, const char *p, va_list ap) /* --- Sort out the various silly flags and things --- */ - dstr_create(&dd); DPUTC(&dd, '%'); f = 0; sz = DSTR_PUTFSTEP; @@ -396,13 +398,14 @@ int dstr_vputf(dstr *d, const char *p, va_list ap) } formatted: - dstr_destroy(&dd); + DRESET(&dd); q = ++p; } DPUTM(d, q, p - q); finished: DPUTZ(d); + DDESTROY(&dd); return (d->len - n); }