From db116df726f640699e500590d50200b9df6115a2 Mon Sep 17 00:00:00 2001 From: Sami Kerola Date: Wed, 4 Apr 2012 19:59:35 +0200 Subject: hwclock: verify writing to streams was successful Signed-off-by: Sami Kerola --- hwclock/hwclock.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'hwclock/hwclock.c') diff --git a/hwclock/hwclock.c b/hwclock/hwclock.c index 4da2dca79..3cedd1de3 100644 --- a/hwclock/hwclock.c +++ b/hwclock/hwclock.c @@ -72,6 +72,7 @@ #include "c.h" #include "clock.h" +#include "closestream.h" #include "nls.h" #include "pathnames.h" #include "strutils.h" @@ -164,7 +165,8 @@ static void write_date_to_file(struct tm *tm) if ((fp = fopen(_PATH_LASTDATE, "w"))) { fprintf(fp, "%02d.%02d.%04d\n", tm->tm_mday, tm->tm_mon + 1, tm->tm_year + 1900); - fclose(fp); + if (close_stream(fp) != 0) + warn(_("cannot write %s"), _PATH_LASTDATE); } else warn(_("cannot write %s"), _PATH_LASTDATE); } @@ -1026,7 +1028,7 @@ static void save_adjtime(const struct adjtime adjtime, const bool testing) adj_file_name); err = 1; } - if (fclose(adjfile) < 0) { + if (close_stream(adjfile) != 0) { warn(_ ("Could not update file with the clock adjustment " "parameters (%s) in it"), @@ -1521,6 +1523,7 @@ int main(int argc, char **argv) #endif bindtextdomain(PACKAGE, LOCALEDIR); textdomain(PACKAGE); + atexit(close_stdout); /* Set option defaults */ show = set = systohc = hctosys = systz = adjust = noadjfile = predict = -- cgit v1.2.3-55-g7522