From: van Date: Sun, 2 Mar 2008 05:15:56 +0000 (+0000) Subject: Don't crash just because some dvd title uses an illegal pgn number. X-Git-Tag: 0.9.3~620 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=51a12d1cd4a2198b3d8e5ae0b339ed901522e5a3;p=handbrake Don't crash just because some dvd title uses an illegal pgn number. (Fixes bug reported in http://forum.handbrake.fr/viewtopic.php?p=28767&sid=23308d0c02b70fceb54db71b0d0f2660#p28767). git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1324 b64f7644-9d1e-0410-96f1-a4d463321fa5 --- diff --git a/libhb/dvd.c b/libhb/dvd.c index 05e9bde57..1c4eb60d3 100644 --- a/libhb/dvd.c +++ b/libhb/dvd.c @@ -178,6 +178,12 @@ hb_title_t * hb_dvd_title_scan( hb_dvd_t * d, int t ) goto fail; } + if( pgn <= 0 || pgn > 99 ) + { + hb_error( "scan: pgn %d not valid, skipping", pgn ); + goto fail; + } + /* Start cell */ title->cell_start = d->pgc->program_map[pgn-1] - 1; title->block_start = d->pgc->cell_playback[title->cell_start].first_sector;