mirror of
https://github.com/fluencelabs/musl
synced 2025-06-25 12:42:02 +00:00
fix fclose return status logic, again
the previous fix was incorrect, as it would prevent f->close(f) from being called if fflush(f) failed. i believe this was the original motivation for using | rather than ||. so now let's just use a second statement to constrain the order of function calls, and to back to using |.
This commit is contained in:
@ -13,7 +13,8 @@ int fclose(FILE *f)
|
|||||||
OFLUNLOCK();
|
OFLUNLOCK();
|
||||||
}
|
}
|
||||||
|
|
||||||
r = -(fflush(f) || f->close(f));
|
r = fflush(f);
|
||||||
|
r |= f->close(f);
|
||||||
|
|
||||||
if (!perm) free(f);
|
if (!perm) free(f);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user