]> granicus.if.org Git - handbrake/commitdiff
back off part of the last dvdread fix
authorjstebbins <jstebbins.hb@gmail.com>
Fri, 8 Jul 2011 23:10:16 +0000 (23:10 +0000)
committerjstebbins <jstebbins.hb@gmail.com>
Fri, 8 Jul 2011 23:10:16 +0000 (23:10 +0000)
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

contrib/libdvdread/A05-short-ptt-table.patch

index b6a23b357fe227293c5b8d0b281cf5119c1b46e1..edfaec2abf53eafa2c26e4a22365a8686f4d9799 100644 (file)
@@ -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);