[gst-cvs] gst-plugins-good: avidemux: Fix pointer arithmetic

Sebastian Dröge slomo at kemper.freedesktop.org
Wed May 13 01:17:05 PDT 2009


Module: gst-plugins-good
Branch: master
Commit: e93f784ee11b5b57612cd89a0443fab47a4a6590
URL:    http://cgit.freedesktop.org/gstreamer/gst-plugins-good/commit/?id=e93f784ee11b5b57612cd89a0443fab47a4a6590

Author: Sebastian Dröge <sebastian.droege at collabora.co.uk>
Date:   Tue May 12 21:20:04 2009 +0200

avidemux: Fix pointer arithmetic

This fixes a seeking regression, bug #134522.

---

 gst/avi/gstavidemux.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/gst/avi/gstavidemux.c b/gst/avi/gstavidemux.c
index 70f6777..62a8f4a 100644
--- a/gst/avi/gstavidemux.c
+++ b/gst/avi/gstavidemux.c
@@ -351,7 +351,7 @@ gst_avi_demux_index_entry_for_time (GstAviDemux * avi,
     gint stream_nr, guint64 time)
 {
   gst_avi_index_entry *entry = NULL;
-  guint n = 0;
+  guint n;
 
   GST_LOG_OBJECT (avi, "stream_nr:%d , time:%" GST_TIME_FORMAT,
       stream_nr, GST_TIME_ARGS (time));
@@ -362,6 +362,7 @@ gst_avi_demux_index_entry_for_time (GstAviDemux * avi,
       (GCompareDataFunc) gst_avi_demux_index_entry_search,
       GST_SEARCH_MODE_BEFORE, &time, NULL);
 
+  n = entry - avi->index_entries;
   if (entry == NULL) {
     entry = &avi->index_entries[0];
     n = 0;
@@ -370,7 +371,6 @@ gst_avi_demux_index_entry_for_time (GstAviDemux * avi,
       entry = &avi->index_entries[n];
     }
   } else if (entry->stream_nr != stream_nr) {
-    n = (entry - avi->index_entries) / sizeof (gst_avi_index_entry);
     while (entry->stream_nr != stream_nr && n > 0) {
       n--;
       entry = &avi->index_entries[n];





More information about the Gstreamer-commits mailing list