diff options
Diffstat (limited to 'src/input/libdvdnav/dvd_reader.c')
-rw-r--r-- | src/input/libdvdnav/dvd_reader.c | 7 |
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; } |