1
0
mirror of https://github.com/mpv-player/mpv synced 2024-12-21 22:30:22 +00:00

stream_dvd: prevent segmentation fault with some broken files

I have a sample where some final chapters are missing. This was causing a
segmentation fault when trying to fetch chapter times for them.

This makes the code ignore those chapters.
This commit is contained in:
Stefano Pigozzi 2013-09-14 20:15:23 +02:00
parent 29edc86721
commit 855b705980

View File

@ -496,7 +496,7 @@ static int get_chapter_time(ifo_handle_t *vts_file, tt_srpt_t *tt_srpt, int titl
last_cell = pgc->program_map[ptt[i].pgn];
else
last_cell = 0;
do {
while (cell < last_cell) {
if(!(pgc->cell_playback[cell-1].block_type == BLOCK_TYPE_ANGLE_BLOCK &&
pgc->cell_playback[cell-1].block_mode != BLOCK_MODE_FIRST_CELL)
) {
@ -508,7 +508,7 @@ static int get_chapter_time(ifo_handle_t *vts_file, tt_srpt_t *tt_srpt, int titl
cur++;
}
cell++;
} while(cell < last_cell);
}
}
return 0;
}