Lines Matching refs:data
28 ** When the application fills or flushes the stream buffer, data
34 ** case, any buffered data must then be fed to the new discipline
35 ** to preserve data processing semantics. This is done by creating
36 ** a temporary discipline to cache such buffered data and feed
37 ** them to the new discipline when its readf() asks for new data.
39 ** when it runs out of cached data.
46 uchar* data;
92 /* read from available data */
94 if((sz = dcca->endb - dcca->data) > (ssize_t)size)
96 memcpy(buf, dcca->data, sz);
98 if((dcca->data += sz) >= dcca->endb) /* free empty cache */
128 { /* make sure in read mode to check for read-ahead data */
140 /* disallow popping while there is cached data */
149 f->endb = f->next = f->endr = f->endw = f->data;
152 /* if there is buffered data, ask app before proceeding */
153 if(((f->mode&SF_WRITE) && (n = f->next-f->data) > 0) ||
170 /* trick the new discipline into processing already buffered data */
179 /* move buffered data into the temp discipline */
180 dcca->data = ((uchar*)dcca) + sizeof(Dccache_t);
181 dcca->endb = dcca->data + n;
182 memcpy(dcca->data, f->next, n);
183 f->endb = f->next = f->endr = f->endw = f->data;
229 if(dcca) /* insert the discipline with cached data */
258 else if(f->data == f->tiny)
262 sfsetbuf(f,(Void_t*)f->data,f->size);