commit 06c44edcbf03f02d1d7c07f9360de526dd4203d3 from: Stefan Sperling date: Wed Jun 15 13:10:50 2022 UTC check for errors from fclose() in patch_file() commit - 11ce22a1a15a25df1218e6cd79c7c0ff7e951b63 commit + 06c44edcbf03f02d1d7c07f9360de526dd4203d3 blob - 7e67a8450c8809c9522ce0263b3e11fa2bdacd78 blob + 2df166b9fc595bdad6395572e7e122cbb2c4b2d1 --- lib/patch.c +++ lib/patch.c @@ -546,8 +546,8 @@ patch_file(struct got_patch *p, const char *path, FILE err = copy(tmp, orig, copypos, -1); done: - if (orig != NULL) - fclose(orig); + if (orig != NULL && fclose(orig) == EOF && err == NULL) + err = got_error_from_errno("fclose"); return err; } @@ -687,8 +687,8 @@ done: free(template); if (tmppath != NULL) unlink(tmppath); - if (tmp != NULL) - fclose(tmp); + if (tmp != NULL && fclose(tmp) == EOF && err == NULL) + err = got_error_from_errno("fclose"); free(tmppath); free(oldpath); free(newpath);