diff options
author | jstebbins <[email protected]> | 2011-07-08 23:10:16 +0000 |
---|---|---|
committer | jstebbins <[email protected]> | 2011-07-08 23:10:16 +0000 |
commit | 2b37eba132347010a6ecd1af5d9704f9150379ba (patch) | |
tree | 1c3466bd6704427eaf8b0e7f1a4f90e7e3b21c4c /contrib/libdvdread | |
parent | 3fceadac91bbeb330dbd99dd79698726a643f671 (diff) |
back off part of the last dvdread fix
It isn't necessary, and was incorrect. I was trying to
anticipate a future problem with references outside the allocated region
for the PTT, but did it wrong. It's probably best to just wait for a disc
that exhibits this potential problem to surface before attempting a fix.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4091 b64f7644-9d1e-0410-96f1-a4d463321fa5
Diffstat (limited to 'contrib/libdvdread')
-rw-r--r-- | contrib/libdvdread/A05-short-ptt-table.patch | 18 |
1 files changed, 0 insertions, 18 deletions
diff --git a/contrib/libdvdread/A05-short-ptt-table.patch b/contrib/libdvdread/A05-short-ptt-table.patch index b6a23b357..edfaec2ab 100644 --- a/contrib/libdvdread/A05-short-ptt-table.patch +++ b/contrib/libdvdread/A05-short-ptt-table.patch @@ -17,21 +17,3 @@ Index: ifo_read.c for(i = 0; i < vts_ptt_srpt->nr_of_srpts; i++) { B2N_32(data[i]); /* assert(data[i] + sizeof(ptt_info_t) <= vts_ptt_srpt->last_byte + 1); -@@ -1178,6 +1175,17 @@ - ifofile->vts_ptt_srpt = 0; - return 0; - } -+ -+ if(vts_ptt_srpt->title[i].nr_of_ptts * sizeof(uint32_t) > info_length) { -+ for(n = 0; n < i; n++) -+ free(vts_ptt_srpt->title[n].ptt); -+ fprintf(stderr, "libdvdread: PTT search table too small.\n"); -+ free(vts_ptt_srpt); -+ free(data); -+ ifofile->vts_ptt_srpt = 0; -+ return 0; -+ } -+ - for(j = 0; j < vts_ptt_srpt->title[i].nr_of_ptts; j++) { - /* The assert placed here because of Magic Knight Rayearth Daybreak */ - CHECK_VALUE(data[i] + sizeof(ptt_info_t) <= vts_ptt_srpt->last_byte + 1); |