X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/mLib/blobdiff_plain/693c44efaf64d94ce2f6ff29e53efa48812153cc..e03be5f4f70614fea2479741cb54cd411be963f8:/selbuf.c diff --git a/selbuf.c b/selbuf.c index b8b1161..9acc65f 100644 --- a/selbuf.c +++ b/selbuf.c @@ -1,6 +1,6 @@ /* -*-c-*- * - * $Id: selbuf.c,v 1.3 1999/05/22 13:41:00 mdw Exp $ + * $Id: selbuf.c,v 1.4 2000/06/17 10:38:14 mdw Exp $ * * Line-buffering select handler * @@ -30,6 +30,9 @@ /*----- Revision history --------------------------------------------------* * * $Log: selbuf.c,v $ + * Revision 1.4 2000/06/17 10:38:14 mdw + * Add support for variable buffer sizes. + * * Revision 1.3 1999/05/22 13:41:00 mdw * Fix end-of-file detection and error handling. * @@ -131,6 +134,21 @@ static void selbuf_read(int fd, unsigned mode, void *vp) } } +/* --- @selbuf_setsize@ --- * + * + * Arguments: @selbuf *b@ = pointer to buffer block + * @size_t sz@ = size of buffer + * + * Returns: --- + * + * Use: Sets the size of the buffer used for reading lines. + */ + +void selbuf_setsize(selbuf *b, size_t sz) +{ + lbuf_setsize(&b->b, sz); +} + /* --- @selbuf_init@ --- * * * Arguments: @selbuf *b@ = pointer to buffer block @@ -156,4 +174,19 @@ void selbuf_init(selbuf *b, selbuf_enable(b); } +/* --- @selbuf_destroy@ --- * + * + * Arguments: @selbuf *b@ = pointer to buffer block + * + * Returns: --- + * + * Use: Deallocates a line buffer and frees any resources it owned. + */ + +void selbuf_destroy(selbuf *b) +{ + selbuf_disable(b); + lbuf_destroy(&b->b); +} + /*----- That's all, folks -------------------------------------------------*/