Because fseek returns 0 on success and -1 on failure.
But the stream wrapper needs to return either true or false.
True is mapped to 0 to the caller and False to -1.
I discovered this during testing.