[MPlayer-dev-eng] [PATCH] libdvdread 0.9.5 update

Uoti Urpala uoti.urpala at pp1.inet.fi
Mon Aug 13 05:16:26 CEST 2007


On Sun, 2007-08-12 at 22:49 -0400, Robert Bradbury wrote:
> the mplayer sources and the external system libraries.  The code in all of
> the libraries involving lseek() on DVDs appears to be just plain wrong
> (lseek returns a -1 on errors, not a value less than zero which is what the
> current code tests for) [1].

Why would testing for < 0 be wrong? Is there a system where lseek()
return type would be unsigned? Or do you expect other negative values to
be valid non-error file positions?

> I'm getting seek errors on DVDs when the "DVD" block number * 2048 exceeds
> the size of a 32-bit integer (i.e. > 4GB dual layer DVDs).  I've tried
> changing the code to use lseek64 on an i386 in the current release of Gentoo

Configure should enable defines needed for largefile support so that
off_t is 64 bits and plain lseek() works. If that doesn't happen on your
system investigate the reason for that first.





More information about the MPlayer-dev-eng mailing list