[PATCH v2] Fix ftell with fdopen for all cases and fopen with a+ mode (#16532)
Rich Felker
dalias@aerifal.cx
Tue Feb 18 16:52:00 GMT 2014
On Tue, Feb 18, 2014 at 10:14:49PM +0530, Siddhesh Poyarekar wrote:
> On Tue, Feb 18, 2014 at 11:27:35AM -0500, Rich Felker wrote:
> > Having the flush/seek sync the offset is not valid, since it's
> > permissible to switch to using a different active handle (e.g. the
> > underlying fd or a copy of the FILE in a forked child) at this point
> > and adjust the offset before switching back to this FILE. Instead,
> > explicit flush/seek operations need to reset the offset status to
> > "unknown" so that future ftell operations will query it again like
> > they did the first time. Implicit flush from the buffer filling up
> > does not need to do this.
>
> Then this would be wrong in existing code anyway. Could you file a
> bug so that I can take a look at it as a separate problem?
>
> Also, does the fix look OK? It's OK if you don't want to give an ack
> for the patch, but I'd like your opinion on it since you had pointed
> out problems with the earlier fix.
I need to look at both the proposed fix and the likely-still-existing
current bug you mentioned before I can comment more on them, but yes
I'd like to help. I'll see if I can get a bug report filed with
testcase.
Rich
More information about the Libc-alpha
mailing list