Lines Matching +full:buffered +full:- +full:negative
2 * Copyright (c) 2000-2001 Proofpoint, Inc. and its suppliers.
16 SM_RCSID("@(#)$Id: wbuf.c,v 1.22 2013-11-22 20:51:44 ca Exp $")
24 ** SM_WBUF -- write character to and flush (likely now full) buffer
28 ** or if c=='\n' and the file is line buffered.
31 ** fp -- the file pointer
32 ** timeout -- time to complete operation (milliseconds)
33 ** c -- int representation of the character to add
36 ** Failure: -1 and sets errno
50 ** make sure w is 0 (if fully- or un-buffered) or -bf.smb_size
51 ** (if line buffered) so that we will get called again.
53 ** calls might wrap w from negative to positive.
56 fp->f_w = fp->f_lbfsize;
67 ** completely, or if c is '\n' and the file is line buffered,
75 n = fp->f_p - fp->f_bf.smb_base;
76 if (n >= fp->f_bf.smb_size)
82 fp->f_w--;
83 *fp->f_p++ = c;
84 if (++n == fp->f_bf.smb_size || (fp->f_flags & SMLBF && c == '\n'))