libdisplay-info/include/memory-stream.h
Joshua Ashton c63ca40ef7 memory-stream: Add memory_stream_cleanup helper
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2022-11-25 12:15:14 +00:00

32 lines
542 B
C

#ifndef MEMORY_STREAM_H
#define MEMORY_STREAM_H
/**
* Utility functions for memory streams.
*/
#include <stdio.h>
#include <stddef.h>
#include <stdbool.h>
struct memory_stream {
FILE *fp;
char *str;
size_t str_len;
};
bool
memory_stream_open(struct memory_stream *m);
char *
memory_stream_close(struct memory_stream *m);
/**
* A small cleanup helper that simply
* calls free(memory_stream_close(m)) to avoid
* any dangling string pointers in cleanup/error paths.
*/
void
memory_stream_cleanup(struct memory_stream *m);
#endif