diff --git a/ChangeLog b/ChangeLog index 4f4e40c4..5fe6cbf0 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2009-04-30 Nicolas François + + * lib/commonio.c: Ignore teh return values of fclose() and + unlink() in case of failure of fopen_set_perms() or + create_backup(). + * lib/commonio.c: Should the backup file be unlink'ed in case of + failure of create_backup()? + 2009-04-30 Nicolas François * lib/getulong.c: Added splint annotations. diff --git a/lib/commonio.c b/lib/commonio.c index 455d3c0d..c2394310 100644 --- a/lib/commonio.c +++ b/lib/commonio.c @@ -222,8 +222,9 @@ static /*@null@*/ /*@dependent@*/FILE *fopen_set_perms ( return fp; fail: - fclose (fp); - unlink (name); + (void) fclose (fp); + /* fopen_set_perms is used for intermediate files */ + (void) unlink (name); return NULL; } @@ -257,11 +258,13 @@ static int create_backup (const char *backup, FILE * fp) } } if ((c != EOF) || (ferror (fp) != 0) || (fflush (bkfp) != 0)) { - fclose (bkfp); + (void) fclose (bkfp); + /* FIXME: unlink the backup file? */ return -1; } if ( (fsync (fileno (bkfp)) != 0) || (fclose (bkfp) != 0)) { + /* FIXME: unlink the backup file? */ return -1; }