Lines Matching refs:st

43 	struct state	*st = v;  in wmemstream_write()  local
47 end = (st->pos + l); in wmemstream_write()
49 if (end >= st->size) { in wmemstream_write()
51 size_t sz = st->size * 8 / 5; in wmemstream_write()
55 p = recallocarray(st->string, st->size, sz, sizeof(wchar_t)); in wmemstream_write()
58 *st->pbuf = st->string = p; in wmemstream_write()
59 st->size = sz; in wmemstream_write()
62 nmc = (st->size - st->pos) * sizeof(wchar_t); in wmemstream_write()
63 len = mbsnrtowcs(st->string + st->pos, &b, nmc, l, &st->mbs); in wmemstream_write()
66 st->pos += len; in wmemstream_write()
68 if (st->pos > st->len) { in wmemstream_write()
69 st->len = st->pos; in wmemstream_write()
70 st->string[st->len] = L'\0'; in wmemstream_write()
73 *st->psize = st->pos; in wmemstream_write()
81 struct state *st = v; in wmemstream_seek() local
88 base = st->pos; in wmemstream_seek()
91 base = st->len; in wmemstream_seek()
104 bzero(&st->mbs, sizeof(st->mbs)); in wmemstream_seek()
106 st->pos = base + off; in wmemstream_seek()
107 *st->psize = MINIMUM(st->pos, st->len); in wmemstream_seek()
109 return (st->pos); in wmemstream_seek()
115 struct state *st = v; in wmemstream_close() local
117 free(st); in wmemstream_close()
125 struct state *st; in open_wmemstream() local
133 if ((st = malloc(sizeof(*st))) == NULL) in open_wmemstream()
137 free(st); in open_wmemstream()
141 st->size = BUFSIZ * sizeof(wchar_t); in open_wmemstream()
142 if ((st->string = calloc(1, st->size)) == NULL) { in open_wmemstream()
143 free(st); in open_wmemstream()
148 st->pos = 0; in open_wmemstream()
149 st->len = 0; in open_wmemstream()
150 st->pbuf = pbuf; in open_wmemstream()
151 st->psize = psize; in open_wmemstream()
152 bzero(&st->mbs, sizeof(st->mbs)); in open_wmemstream()
154 *pbuf = st->string; in open_wmemstream()
155 *psize = st->len; in open_wmemstream()
159 fp->_cookie = st; in open_wmemstream()