Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 142540 Details for
Bug 208641
media-video/mplayer X-Protect patch
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
mplayer-1.0_rc2_p24929-movie-protect.patch
mplayer-1.0_rc2_p24929-movie-protect.patch (text/plain), 2.70 KB, created by
Tim Taubert
on 2008-02-02 21:32:23 UTC
(
hide
)
Description:
mplayer-1.0_rc2_p24929-movie-protect.patch
Filename:
MIME Type:
Creator:
Tim Taubert
Created:
2008-02-02 21:32:23 UTC
Size:
2.70 KB
patch
obsolete
>--- dvdread/dvd_input.c 2007-08-15 14:01:48.000000000 +0200 >+++ dvdread/dvd_input.c.new 2008-02-02 21:46:01.000000000 +0100 >@@ -376,6 +376,8 @@ > } > #endif /* HAVE_DVDCSS_DVDCSS_H */ > >+ fprintf(stderr, "libdvdread patched to play DVDs with DVD-Movie-Protect\n"); >+ > dvdcss_library_init = 1; > > if(dvdcss_library) { >--- dvdread/dvd_udf.c 2007-08-15 14:01:48.000000000 +0200 >+++ dvdread/dvd_udf.c.new 2008-02-02 21:53:04.000000000 +0100 >@@ -39,6 +39,7 @@ > #include <sys/stat.h> > #include <unistd.h> > #include <errno.h> >+#include <fnmatch.h> > > #if defined(HAVE_INTTYPES_H) > #include <inttypes.h> >@@ -50,6 +51,9 @@ > #include "dvd_udf.h" > #include "dvdread_internal.h" > >+#include "ifo_types.h" >+#include "ifo_read.h" >+ > #ifndef EMEDIUMTYPE > #define EMEDIUMTYPE ENOENT > #endif >@@ -965,6 +969,71 @@ > uint32_t UDFFindFile( dvd_reader_t *device, char *filename, > uint32_t *filesize ) > { >+ uint32_t offset=0; >+ if (!fnmatch("/VIDEO_TS/VTS_[0-9][0-9]_[0-9].???", filename, FNM_PATHNAME)) { >+ size_t len = strlen(filename); >+ char *extension = &filename[len-3]; >+ if (!strcmp(extension, "IFO") || !strcmp(extension, "VOB")) { >+ int title = atoi(&filename[len-8]); >+ int part = atoi(&filename[len-5]); >+ >+ ifo_handle_t *ifo_handle = ifoOpen(device, 0); >+ if (0 == ifo_handle) >+ return 0; >+ >+ if (title > ifo_handle->tt_srpt->nr_of_srpts) { >+ ifoClose(ifo_handle); >+ return 0; >+ >+ } >+ >+ uint32_t tmp_filesize; >+ offset += UDFFindFile(device, "/VIDEO_TS/VIDEO_TS.IFO", &tmp_filesize); >+ >+ int i; >+ for (i=0; i<ifo_handle->tt_srpt->nr_of_srpts; i++) >+ if (title == ifo_handle->tt_srpt->title[i].title_set_nr) >+ break; >+ >+ if (i == ifo_handle->tt_srpt->nr_of_srpts) { >+ /* not found */ >+ ifoClose(ifo_handle); >+ return 0; >+ } >+ offset += ifo_handle->tt_srpt->title[i].title_set_sector; >+ >+ ifoClose(ifo_handle); >+ >+ if (!strcmp(extension, "VOB")) { >+ ifo_handle = ifoOpen(device, title); >+ if (0 == ifo_handle) >+ return 0; >+ >+ switch(part) { >+ case 0: >+ if (0 == ifo_handle->vtsi_mat->vtsm_vobs) >+ return 0; >+ offset += ifo_handle->vtsi_mat->vtsm_vobs; >+ break; >+ case 1: >+ if (0 == ifo_handle->vtsi_mat->vtstt_vobs) >+ return 0; >+ offset += ifo_handle->vtsi_mat->vtstt_vobs; >+ break; >+ default: /* can't get other parts (also no need to) */ >+ offset = 0; >+ break; >+ } >+ ifoClose(ifo_handle); >+ } >+ } >+ >+ *filesize = 1000000; /* File size unknown */ >+ if (offset != 0) >+ return offset; >+ } >+ >+ > uint8_t *LogBlock; > uint32_t lbnum; > uint16_t TagID;
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 208641
:
142539
| 142540