Ticket #6997: libs_libmythdvdnav-dont-overrun-arrays

File libs_libmythdvdnav-dont-overrun-arrays, 822 bytes (added by Erik Hovland <erik@…>, 15 years ago)

Index at i-1 to prevent overrun of the array.

Line 
1THe array dsi->vobu_sri.fwda should be indexed as i -1
2
3From: Erik Hovland <erik@hovland.org>
4
5
6---
7
8 mythtv/libs/libmythdvdnav/dvdnav/searching.c |    2 +-
9 1 files changed, 1 insertions(+), 1 deletions(-)
10
11
12diff --git a/mythtv/libs/libmythdvdnav/dvdnav/searching.c b/mythtv/libs/libmythdvdnav/dvdnav/searching.c
13index ceff5e5..9c2d959 100644
14--- a/mythtv/libs/libmythdvdnav/dvdnav/searching.c
15+++ b/mythtv/libs/libmythdvdnav/dvdnav/searching.c
16@@ -668,7 +668,7 @@ dvdnav_status_t dvdnav_relative_time_search(dvdnav_t *this,
17     if (length > 0) {
18       for (i = 1; i <= 19; i++) {
19         if (stime[i-1]/2.0 <= length/2.0) {
20-          offset = dsi->vobu_sri.fwda[i];
21+          offset = dsi->vobu_sri.fwda[i-1];
22           if (offset >> 31) {
23             new_vobu = cur_vobu + (offset & 0xffff);
24           } else {