summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoland Krikava <rkrikava@gmail.com>2012-11-02 12:38:44 -0400
committerTim-Philipp Müller <tim@centricular.net>2012-11-26 15:19:05 +0000
commitce94b2c2b91b6db190c121860e12a6afafce7ae1 (patch)
tree5f3392cd7cb15e986ecc49153ec8f3daed93d1f4
parent9c917b84916e57f1b4312a36de5bae013dca58e9 (diff)
mulawdec: fix integer overrun
There might be more than 65535 samples in a chunk of data. https://bugzilla.gnome.org/show_bug.cgi?id=687469
-rw-r--r--gst/law/mulaw-conversion.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/gst/law/mulaw-conversion.c b/gst/law/mulaw-conversion.c
index 8afae806f..190a9f547 100644
--- a/gst/law/mulaw-conversion.c
+++ b/gst/law/mulaw-conversion.c
@@ -51,9 +51,10 @@ mulaw_encode (gint16 * in, guint8 * out, gint numsamples)
7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7
};
- gint16 sign, exponent, mantissa, i;
+ gint16 sign, exponent, mantissa;
gint16 sample;
guint8 ulawbyte;
+ gint i;
for (i = 0; i < numsamples; i++) {
sample = in[i];
@@ -102,7 +103,8 @@ mulaw_decode (guint8 * in, gint16 * out, gint numsamples)
static gint16 exp_lut[8] = { 0, 132, 396, 924, 1980, 4092, 8316, 16764 };
gint16 sign, exponent, mantissa;
guint8 ulawbyte;
- gint16 linear, i;
+ gint16 linear;
+ gint i;
for (i = 0; i < numsamples; i++) {
ulawbyte = in[i];