This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On Mon, Mar 10, 2014 at 02:34:59PM -0400, Rich Felker wrote: > Caching the offset is valid when writing in append mode. The one case > that's special for append mode is that, even once the handle is > active, you can't save the resulting offset at the time of seek/rewind > and use it for ftell during subsequent writing. This is because the > (first) write after seeking could change the current offset. One easy > way to deal with this is to treat seek/rewind as deactivating the > handle when the stream is in append mode, but more fine-grained > solutions are possible too. Treating seek/rewind as deactivating the handle won't help for append mode because we want to simulate the file position as being the end of file regardless of the file position when the handle is inactive, but after a seek, the stream is assumed to be in read mode until the next write and in such a case, we want to know the actual position of the file and not the simulated end-of-file. That is why I use writing in append mode as a coarse-grained indicator that the file offset is the end of file. Isn't it similar to what you do in musl? Siddhesh
Attachment:
pgpTVW0Be9icZ.pgp
Description: PGP signature
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |