From 9b322520b90503ad2b1cbcf9062f8a3d377c7c28 Mon Sep 17 00:00:00 2001 From: James Laird Date: Wed, 22 Feb 2012 14:09:58 +1100 Subject: Fix libdvdnav searching routine for discs with multiple main titles Prevents crashes when attempting to seek/skip within DVDs and DVD ISOs of things like TV shows. --- lib/libdvd/libdvdnav/src/searching.c | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/lib/libdvd/libdvdnav/src/searching.c b/lib/libdvd/libdvdnav/src/searching.c index 0d3475ed1c..03f1696dfc 100644 --- a/lib/libdvd/libdvdnav/src/searching.c +++ b/lib/libdvd/libdvdnav/src/searching.c @@ -225,13 +225,9 @@ timemapdone: if(found) { length = cell->last_sector - cell->first_sector + 1; - if (target >= length) { - target -= length; - } else { - /* convert the target sector from Cell-relative to absolute physical sector */ - target += cell->first_sector; - break; - } + /* target is in absolute sectors */ + if (target <= cell->last_sector) + break; } else { -- cgit v1.2.3