libdvdread bug
"Olivier Rolland" <[email protected]> Thu, 5 Oct 2006 21:56:11 +0200
| Newsgroups | gmane.comp.video.ogle.user |
|---|---|
| Message-ID | <[email protected]> |
Hi,
libdvdread 0.9.6 segfaults when a device is opened 2 (or more) times,
the second reader being closed before the first one (see example
below). This used to work perfectly with 0.9.4.
Cheers,
--
Olivier
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
#include <dvdread/ifo_read.h>
int
main (int argc, char *argv[])
{
dvd_reader_t *reader1, *reader2;
if (argc < 2)
{
fprintf (stderr, "usage: argv[0] <device>\n");
return EXIT_FAILURE;
}
printf ("Opening %s (reader1)...", argv[1]);
reader1 = DVDOpen (argv[1]);
if (!reader1)
{
printf ("ko\n");
return EXIT_FAILURE;
}
printf ("ok\n");
printf ("Reopening %s (reader2)...", argv[1]);
reader2 = DVDOpen (argv[1]);
if (!reader2)
{
printf ("ko\n");
DVDClose (reader1);
return EXIT_FAILURE;
}
printf ("ok\n");
printf ("Closing %s (reader2)...", argv[1]);
DVDClose (reader2);
printf ("ok\n");
printf ("Closing %s (reader1)...", argv[1]);
DVDClose (reader1);
printf ("ok\n");
return EXIT_SUCCESS;
}