Hacker News new | past | comments | ask | show | jobs | submit login

Given that the standard states

    [EINTR]
        The fclose() function was interrupted by a signal.
I think it's safe to say that fclose is allowed to fail with no defined way to clean up the mess.



Yeah, I was just looking at that after I posted my initial comment, and I think I agree with you. That's the only reading I can see that doesn't create more questions than it answers.

I think in this case, Occam's razor says "this part of the standard is not fully thought through".


this part of the standard is not fully thought through

I agree... and this terrifies me, given that EINTR is mentioned in the man page for close(2) back in BSD Net/2, over 20 years ago.


this terrifies me

Now think about all the libraries and application that end up calling close() and fclose().

Add a few abstraction layers and good luck figuring out if closing a file is safe in a multithreaded Java app.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: