aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2009-11-06 16:41:20 +0000
committerfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2009-11-06 16:41:20 +0000
commitc9fdb86c2ec0f6b223f5bdc650c6aa1b13244fd9 (patch)
tree0e9740fc8d38246ca7a0f3414607cf53257e39ff
parent1681d71ab4dc96b899b026da21a2e7b3bd061a65 (diff)
Fix a bug caused by a partially invalid frame (from the jitterbuffer) passing through the Asterisk core.
(closes issue #15560) Reported by: jvandal (closes issue #15709) Reported by: covici git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@228409 f38db490-d61c-443f-a65b-d21fe96a405b
-rw-r--r--main/abstract_jb.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/main/abstract_jb.c b/main/abstract_jb.c
index 226df462b..ecc5e8cde 100644
--- a/main/abstract_jb.c
+++ b/main/abstract_jb.c
@@ -389,7 +389,7 @@ static void jb_get_and_deliver(struct ast_channel *chan)
struct ast_jb *jb = &chan->jb;
struct ast_jb_impl *jbimpl = jb->impl;
void *jbobj = jb->jbobj;
- struct ast_frame *f, finterp;
+ struct ast_frame *f, finterp = { .frametype = AST_FRAME_VOICE, };
long now;
int interpolation_len, res;
@@ -418,13 +418,9 @@ static void jb_get_and_deliver(struct ast_channel *chan)
case JB_IMPL_INTERP:
/* interpolate a frame */
f = &finterp;
- f->frametype = AST_FRAME_VOICE;
f->subclass = jb->last_format;
- f->datalen = 0;
f->samples = interpolation_len * 8;
- f->mallocd = 0;
f->src = "JB interpolation";
- f->data = NULL;
f->delivery = ast_tvadd(jb->timebase, ast_samp2tv(jb->next, 1000));
f->offset = AST_FRIENDLY_OFFSET;
/* deliver the interpolated frame */