]> granicus.if.org Git - handbrake/commitdiff
Some DVD titles end with a 'link' command back to the beginning chapter which makes...
authorvan <vanj.hb@gmail.com>
Mon, 8 Jun 2009 05:24:18 +0000 (05:24 +0000)
committervan <vanj.hb@gmail.com>
Mon, 8 Jun 2009 05:24:18 +0000 (05:24 +0000)
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2499 b64f7644-9d1e-0410-96f1-a4d463321fa5

libhb/dvdnav.c

index 2236f6d10ef33db112a9c16e3f2509e6f697fcd4..4c6fd9a39c27321c396ad0737ca7ffe5f1894ddf 100644 (file)
@@ -1080,8 +1080,16 @@ static int hb_dvdnav_read( hb_dvd_t * e, hb_buffer_t * b )
                     return 0;
                 }
                 c = FindChapterIndex(d->list_chapter, pgcn, pgn);
-                if (c > d->chapter)
+                if (c != d->chapter)
+                {
+                    if (c < d->chapter)
+                    {
+                        // Some titles end with a 'link' back to the beginning so
+                        // a transition to an earlier chapter means we're done.
+                        return 0;
+                    }
                     chapter = d->chapter = c;
+                }
             }
             break;