From: Martin Mares Date: Sat, 10 Jul 2004 20:39:31 +0000 (+0000) Subject: Renamed fb-printf to ff-printf to keep fastbuf front-ends and back-ends apart. X-Git-Tag: holmes-import~952 X-Git-Url: http://mj.ucw.cz/gitweb/?a=commitdiff_plain;h=4d343838fefa75faeca13c7a144a6d8ac207261d;p=libucw.git Renamed fb-printf to ff-printf to keep fastbuf front-ends and back-ends apart. --- diff --git a/lib/Makefile b/lib/Makefile index 5297668f..d46c02e1 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -9,7 +9,7 @@ LIBSH_MODS=alloc alloc_str ctmatch db fastbuf fb-file fb-mem lists \ prime random realloc regex timer url wildmatch \ wordsplit str_ctype str_upper str_lower bucket conf object sorter \ finger proctitle ipaccess profile bitsig randomkey \ - hashfunc base64 base224 fb-temp fb-mmap fb-printf urlkey \ + hashfunc base64 base224 fb-temp fb-mmap ff-printf urlkey \ partmap fb-limfd fb-buffer mainloop exitstatus runcmd carefulio \ lizard lizard-safe sighandler buck2obj obj2buck \ unicode-utf8 ff-utf8 diff --git a/lib/fb-printf.c b/lib/fb-printf.c deleted file mode 100644 index 395e04b2..00000000 --- a/lib/fb-printf.c +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Sherlock Library -- Printf on Fastbuf Streams - * - * (c) 2002 Martin Mares - * - * This software may be freely distributed and used according to the terms - * of the GNU Lesser General Public License. - */ - -#include "lib/lib.h" -#include "lib/fastbuf.h" - -#include - -int -vbprintf(struct fastbuf *b, byte *msg, va_list args) -{ - byte *buf; - int r, len = 256; - - while (1) - { - buf = alloca(len); - r = vsnprintf(buf, len, msg, args); - if (r < 0) - len += len; - else if (r < len) - { - bwrite(b, buf, r); - return r; - } - else - len = r+1; - } -} - -int -bprintf(struct fastbuf *b, byte *msg, ...) -{ - va_list args; - int res; - - va_start(args, msg); - res = vbprintf(b, msg, args); - va_end(args); - return res; -} - -#ifdef TEST - -int main(void) -{ - struct fastbuf *b = bfdopen_shared(1, 65536); - bprintf(b, "13=%d str=<%s> msg=%m\n", 13, "str"); - bclose(b); - return 0; -} - -#endif diff --git a/lib/ff-printf.c b/lib/ff-printf.c new file mode 100644 index 00000000..395e04b2 --- /dev/null +++ b/lib/ff-printf.c @@ -0,0 +1,59 @@ +/* + * Sherlock Library -- Printf on Fastbuf Streams + * + * (c) 2002 Martin Mares + * + * This software may be freely distributed and used according to the terms + * of the GNU Lesser General Public License. + */ + +#include "lib/lib.h" +#include "lib/fastbuf.h" + +#include + +int +vbprintf(struct fastbuf *b, byte *msg, va_list args) +{ + byte *buf; + int r, len = 256; + + while (1) + { + buf = alloca(len); + r = vsnprintf(buf, len, msg, args); + if (r < 0) + len += len; + else if (r < len) + { + bwrite(b, buf, r); + return r; + } + else + len = r+1; + } +} + +int +bprintf(struct fastbuf *b, byte *msg, ...) +{ + va_list args; + int res; + + va_start(args, msg); + res = vbprintf(b, msg, args); + va_end(args); + return res; +} + +#ifdef TEST + +int main(void) +{ + struct fastbuf *b = bfdopen_shared(1, 65536); + bprintf(b, "13=%d str=<%s> msg=%m\n", 13, "str"); + bclose(b); + return 0; +} + +#endif