summaryrefslogtreecommitdiff
path: root/src/input/libdvdnav/dvd_reader.c
diff options
context:
space:
mode:
authorBastien Nocera <hadess@users.sourceforge.net>2006-05-27 16:13:17 +0000
committerBastien Nocera <hadess@users.sourceforge.net>2006-05-27 16:13:17 +0000
commit9e801ef23dcf2a43d3977cebb088af099d499bb6 (patch)
tree1e7da23053b9ad8237c5e4e78daf836e46244fb0 /src/input/libdvdnav/dvd_reader.c
parent2c94116dd4127b7ac6db9a5c2bf909873cf7394b (diff)
downloadxine-lib-9e801ef23dcf2a43d3977cebb088af099d499bb6.tar.gz
xine-lib-9e801ef23dcf2a43d3977cebb088af099d499bb6.tar.bz2
- Use file access instead of drive access when the volume is already
mounted. Allows playback of mounted unencrypted ISO9660 DVDs, when libdvdnav only supports UDF DVDs CVS patchset: 7998 CVS date: 2006/05/27 16:13:17
Diffstat (limited to 'src/input/libdvdnav/dvd_reader.c')
-rw-r--r--src/input/libdvdnav/dvd_reader.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/input/libdvdnav/dvd_reader.c b/src/input/libdvdnav/dvd_reader.c
index 964d97f76..6ca1a18b9 100644
--- a/src/input/libdvdnav/dvd_reader.c
+++ b/src/input/libdvdnav/dvd_reader.c
@@ -480,6 +480,13 @@ dvd_reader_t *DVDOpen( const char *ppath )
me->mnt_fsname,
me->mnt_dir );
auth_drive = DVDOpenImageFile( me->mnt_fsname, have_css );
+ /* If the device is not encrypted, don't access the device
+ * directly as it would fail for non-UDF DVDs */
+ if ( dvdinput_is_encrypted( auth_drive->dev ) == 0) {
+ DVDClose( auth_drive );
+ auth_drive = NULL;
+ break;
+ }
dev_name = strdup(me->mnt_fsname);
break;
}