Add cfw_stream_write_line().

This commit is contained in:
Jonathan Schleifer 2012-09-30 03:02:03 +02:00
parent 977f3a0a44
commit b65679f747
2 changed files with 25 additions and 0 deletions

View file

@ -249,6 +249,30 @@ cfw_stream_write_string(void *ptr, const char *str)
return cfw_stream_write(ptr, str, strlen(str)); return cfw_stream_write(ptr, str, strlen(str));
} }
bool
cfw_stream_write_line(void *ptr, const char *str)
{
char *tmp;
size_t len;
len = strlen(str);
if ((tmp = malloc(len + 2)) == NULL)
return false;
memcpy(tmp, str, len);
tmp[len] = '\n';
tmp[len + 1] = '\0';
if (!cfw_stream_write(ptr, tmp, len + 1)) {
free(tmp);
return false;
}
free(tmp);
return true;
}
bool bool
cfw_stream_eof(void *ptr) cfw_stream_eof(void *ptr)
{ {

View file

@ -52,6 +52,7 @@ extern ssize_t cfw_stream_read(void*, void*, size_t);
extern CFWString* cfw_stream_read_line(void*); extern CFWString* cfw_stream_read_line(void*);
extern bool cfw_stream_write(void*, const void*, size_t); extern bool cfw_stream_write(void*, const void*, size_t);
extern bool cfw_stream_write_string(void*, const char*); extern bool cfw_stream_write_string(void*, const char*);
extern bool cfw_stream_write_line(void*, const char*);
extern bool cfw_stream_eof(void*); extern bool cfw_stream_eof(void*);
extern void cfw_stream_close(void*); extern void cfw_stream_close(void*);
#endif #endif