------- Comment #6 from don dot wakefield at gmail dot com 2010-09-10 14:06
Re: comment 5 - what is needed is for filebuf::seekoff(0,ios::cur) to:
1) *not* invalidate the buffer
2) *not* move the file pointer
since all that special case asks is "where am I in the 'logical' file?"
This can be accomplished by having filebuf::seekoff() recognize an off_type of
0, and a seekdir of cur, and special-case the code to call
_M_file.seekoff(0,cur) (not moving the file pointer, right?) and then adjusting
the resulting pos_type to reflect the true, earlier position held by gptr().
Am I missing something?