diff options
author | Daniel Mack <github@zonque.org> | 2015-07-29 20:43:54 +0200 |
---|---|---|
committer | Daniel Mack <github@zonque.org> | 2015-07-29 20:43:54 +0200 |
commit | 65c85ef5118d88bc0d3459b6e8854bf1846190b9 (patch) | |
tree | 3c60aceafd3cbf6fe12eb6db934350950f4425cd /src/basic | |
parent | 1051d049a8a5811135d83a89a430c5be846866ca (diff) | |
parent | dacd6cee76a08331b8c8616c5f30f70ee49aa2f9 (diff) |
Merge pull request #779 from poettering/fflush-and-check
tree-wide: port everything over to fflush_and_check()
Diffstat (limited to 'src/basic')
-rw-r--r-- | src/basic/calendarspec.c | 8 | ||||
-rw-r--r-- | src/basic/fileio.c | 10 |
2 files changed, 6 insertions, 12 deletions
diff --git a/src/basic/calendarspec.c b/src/basic/calendarspec.c index 2fde3e107e..2dcc9c5575 100644 --- a/src/basic/calendarspec.c +++ b/src/basic/calendarspec.c @@ -253,6 +253,7 @@ int calendar_spec_to_string(const CalendarSpec *c, char **p) { char *buf = NULL; size_t sz = 0; FILE *f; + int r; assert(c); assert(p); @@ -278,12 +279,11 @@ int calendar_spec_to_string(const CalendarSpec *c, char **p) { fputc(':', f); format_chain(f, 2, c->second); - fflush(f); - - if (ferror(f)) { + r = fflush_and_check(f); + if (r < 0) { free(buf); fclose(f); - return -ENOMEM; + return r; } fclose(f); diff --git a/src/basic/fileio.c b/src/basic/fileio.c index 2216853777..4a9105f421 100644 --- a/src/basic/fileio.c +++ b/src/basic/fileio.c @@ -28,21 +28,15 @@ #include "fileio.h" int write_string_stream(FILE *f, const char *line, bool enforce_newline) { + assert(f); assert(line); - errno = 0; - fputs(line, f); if (enforce_newline && !endswith(line, "\n")) fputc('\n', f); - fflush(f); - - if (ferror(f)) - return errno ? -errno : -EIO; - - return 0; + return fflush_and_check(f); } static int write_string_file_atomic(const char *fn, const char *line, bool enforce_newline) { |