Diff of /lib/vorbisfile.c [d71f86] .. [6c7e9c] Maximize Restore

  Switch to side-by-side view

--- a/lib/vorbisfile.c
+++ b/lib/vorbisfile.c
@@ -414,7 +414,10 @@
   /* we can seek, so set out learning all about this file */
   (vf->callbacks.seek_func)(vf->datasource,0,SEEK_END);
   vf->offset=vf->end=(vf->callbacks.tell_func)(vf->datasource);
-  
+
+  /* If seek_func is implemented, tell_func must also be implemented */
+  if(vf->end==-1) return(OV_EINVAL);
+
   /* We get the offset for the last page of the physical bitstream.
      Most OggVorbis files will contain a single logical bitstream */
   end=_get_prev_page(vf,&og);