Lines Matching refs:memstream
32 memstream_init(struct memstream *memstream) in memstream_init() argument
35 memstream->stream = open_memstream(&memstream->buf, in memstream_init()
36 &memstream->size); in memstream_init()
38 memstream->stream = tmpfile(); in memstream_init()
39 memstream->buf = NULL; in memstream_init()
41 return memstream->stream != NULL ? 0 : -1; in memstream_init()
45 memstream_close(struct memstream *memstream) in memstream_close() argument
48 if (fseek(memstream->stream, 0, SEEK_END) < 0) { in memstream_close()
50 fclose(memstream->stream); in memstream_close()
53 memstream->size = ftell(memstream->stream); in memstream_close()
54 if (memstream->size == (size_t)-1) in memstream_close()
56 memstream->buf = malloc(memstream->size); in memstream_close()
57 if (memstream->buf == NULL) in memstream_close()
60 rewind(memstream->stream); in memstream_close()
61 if (fread(memstream->buf, 1, memstream->size, memstream->stream) in memstream_close()
62 < memstream->size) in memstream_close()
66 return fclose(memstream->stream) == 0 ? 0 : -1; in memstream_close()
70 memstream_destroy(struct memstream *memstream) in memstream_destroy() argument
72 free(memstream->buf); in memstream_destroy()