From 02add212a0f0e83dbc3ce667864f249a15852b04 Mon Sep 17 00:00:00 2001 From: "Ronald S. Bultje" Date: Wed, 5 Jan 2005 15:04:02 +0000 Subject: [PATCH] gst-libs/gst/resample/resample.c: Fix invalid memory access (#159211). Original commit message from CVS: Reviewed by: Ronald S. Bultje * gst-libs/gst/resample/resample.c: (gst_resample_sinc_ft_s16): Fix invalid memory access (#159211). --- ChangeLog | 7 +++++++ gst-libs/gst/resample/resample.c | 8 ++++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 622edaf58b..8ff67529a2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2005-01-05 Sebastien Cote + + Reviewed by: Ronald S. Bultje + + * gst-libs/gst/resample/resample.c: (gst_resample_sinc_ft_s16): + Fix invalid memory access (#159211). + 2005-01-05 Ronald S. Bultje * examples/gstplay/player.c: (main): diff --git a/gst-libs/gst/resample/resample.c b/gst-libs/gst/resample/resample.c index cd8991596c..c73b118634 100644 --- a/gst-libs/gst/resample/resample.c +++ b/gst-libs/gst/resample/resample.c @@ -268,7 +268,8 @@ gst_resample_nearest_s16 (gst_resample_t * r) SCALE_LOOP (o_ptr[0] = i_ptr[0], 1); break; case 2: - SCALE_LOOP (o_ptr[0] = i_ptr[0]; o_ptr[1] = i_ptr[1], 2); + SCALE_LOOP (o_ptr[0] = i_ptr[0]; + o_ptr[1] = i_ptr[1], 2); break; default: { @@ -545,6 +546,8 @@ gst_resample_sinc_ft_s16 (gst_resample_t * r) o_ptr = (signed short *) r->o_buf; center = r->o_start; + while (center - r->halftaps < -1 * r->filter_length) + center += 1.0; start_x = center - r->halftaps; start_f = floor (start_x); start_x -= start_f; @@ -627,7 +630,8 @@ gst_resample_nearest_float (gst_resample_t * r) SCALE_LOOP (o_ptr[0] = i_ptr[0], 1); break; case 2: - SCALE_LOOP (o_ptr[0] = i_ptr[0]; o_ptr[1] = i_ptr[1], 2); + SCALE_LOOP (o_ptr[0] = i_ptr[0]; + o_ptr[1] = i_ptr[1], 2); break; default: {