aboutsummaryrefslogtreecommitdiff
path: root/lib/libdvd
diff options
context:
space:
mode:
authorVoyager1 <voyager@xbmc.org>2013-07-14 09:04:20 +0200
committerVoyager1 <voyager@xbmc.org>2013-07-18 08:28:58 +0200
commitd94c50510f4d34af4500230dd5211ad8eed20fc0 (patch)
tree04f56dbefd8f6f6606ed8e6b8fc0a9785cd6bdf1 /lib/libdvd
parentc0391c1baf9e8bfdc26e9c12d251096e1a7a1a96 (diff)
[libdvd] add patch for reenable serial string
Diffstat (limited to 'lib/libdvd')
-rw-r--r--lib/libdvd/patches/libdvdnav_reenable_serialstring.diff28
1 files changed, 28 insertions, 0 deletions
diff --git a/lib/libdvd/patches/libdvdnav_reenable_serialstring.diff b/lib/libdvd/patches/libdvdnav_reenable_serialstring.diff
new file mode 100644
index 0000000000..80b2fd912f
--- /dev/null
+++ b/lib/libdvd/patches/libdvdnav_reenable_serialstring.diff
@@ -0,0 +1,28 @@
+diff --git a/libdvdnav/src/vm/vm.c b/libdvdnav/src/vm/vm.c
+index aea50f3..a14e675 100644
+--- a/libdvdnav/src/vm/vm.c
++++ b/libdvdnav/src/vm/vm.c
+@@ -176,7 +176,6 @@ static void dvd_read_name(char *name, char *serial, const char *device) {
+ off = lseek( fd, 32 * (off_t) DVD_VIDEO_LB_LEN, SEEK_SET );
+ if( off == ( 32 * (off_t) DVD_VIDEO_LB_LEN ) ) {
+ off = read( fd, data, DVD_VIDEO_LB_LEN );
+- close(fd);
+ if (off == ( (off_t) DVD_VIDEO_LB_LEN )) {
+ fprintf(MSG_OUT, "libdvdnav: DVD Title: ");
+ for(i=25; i < 73; i++ ) {
+@@ -399,14 +398,13 @@ int vm_reset(vm_t *vm, const char *dvdroot) {
+ /* return 0; Not really used for now.. */
+ }
+ /* ifoRead_TXTDT_MGI(vmgi); Not implemented yet */
++ dvd_read_name(vm->dvd_name, vm->dvd_serial, dvdroot);
+ #ifdef _XBMC
+ if(DVDUDFVolumeInfo(vm->dvd, vm->dvd_name, sizeof(vm->dvd_name), NULL, 0))
+ if(DVDISOVolumeInfo(vm->dvd, vm->dvd_name, sizeof(vm->dvd_name), NULL, 0))
+ strcpy(vm->dvd_name, "");
+
+ fprintf(MSG_OUT, "libdvdnav: vm: DVD Title: %s\n", vm->dvd_name);
+-#else
+- dvd_read_name(vm->dvd_name, vm->dvd_serial, dvdroot);
+ #endif
+ vm->map = remap_loadmap(vm->dvd_name);
+ }