The fact that someone set m_seekable to false?  Look at its usage.  m_seekable is reset to true on Open() and cleared if 1) seek fails with multisession and again without, 2) we don't know the file size, 3) the server reports that it doesn't support range parameter.  #2 and #3 we likely know before seek has ever been called. #1 we find out on the first call to seek.  I'd see your point if m_seekable was set between the top of Seek() and this check, but it's not.