[DVDnav-discuss] libdvdnav vs. libdvdnav2
Nico Sabbi
nicola_sabbi at fastwebnet.it
Sat May 5 13:22:26 CEST 2007
Jean-Baptiste Kempf wrote:
>
> Just to say, that VLC team is around, and we are watching very closely.
>
> We have a few patches against libdvdnav and some have been commited in a
> way or another.
>
> However, I haven't checked yet (a bit overloaded those days) if our main
> patch on dvdnav can be removed, and it be found here, if needed:
> http://trac.videolan.org/vlc/browser/trunk/extras/contrib/src/Patches/dvdnav.patch
> If you need any info on our building process, just ask :D
>
I gave it a look and applied a couple of small patches, but I found
something unconvincing in that link:
** in dvd_reader.c:
368 366 /* First check if this is a block/char device or a file*/
369 if( S_ISBLK( fileinfo.st_mode ) ||
367 if( !*path || S_ISBLK( fileinfo.st_mode ) ||
370 368 S_ISCHR( fileinfo.st_mode ) ||
371 369 S_ISREG( fileinfo.st_mode ) ) {
why if !*path (i.e. when path is an empty string) we should treat it
as if it were a block device?
** in bswap.h:
- 0xff00000000000000
+ 0xff00000000000000LL seems nonsense to me: in C integer numbers are
automatically enclosed in the smallest enclosing type, that for a
64bit value like that can only be a 64 bit value (in both 32 and 64
bit architectures).
I see that there are also smaller values such as 0x00000000ff000000,
but still...
** in vm.c:
in dvd_read_name() fd is transformed to dvd_input_t
and open() is replaced with dvdinput_open(), but dvdinput_t
(the type returned by dvdinput_open()) is a struct, not an int.
Can you explain, please?
** I prefer to delay the beos<->css code alone to a better moment.
Overall the differences are mininal; can you try linking vlc with this
fork when you have some time, please?
Thanks,
Nico
More information about the DVDnav-discuss
mailing list