diff options
author | russell <russell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-12-04 17:23:49 +0000 |
---|---|---|
committer | russell <russell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-12-04 17:23:49 +0000 |
commit | 59a5477950287547111ce5447c70e82530d7cbc8 (patch) | |
tree | f329a3ad194da7b5a7cd1124d615c428bac295c0 /main/channel.c | |
parent | bc53f606a8d4359e7742f8e29f34f8183bca88b3 (diff) |
Merged revisions 233100 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk
................
r233100 | russell | 2009-12-04 11:18:22 -0600 (Fri, 04 Dec 2009) | 14 lines
Merged revisions 233092 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r233092 | russell | 2009-12-04 11:12:47 -0600 (Fri, 04 Dec 2009) | 7 lines
Only do frame payload check for HOLD frames.
This code was added for helping to debug the source of invalid HOLD frames.
However, a side effect of this is that it will incorrectly report errors for
frames that have an integer payload. Make the check for this block specific
to the HOLD frame case.
........
................
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.2@233130 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'main/channel.c')
-rw-r--r-- | main/channel.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/main/channel.c b/main/channel.c index 8442f0e4d..c009ea901 100644 --- a/main/channel.c +++ b/main/channel.c @@ -3039,14 +3039,14 @@ static struct ast_frame *__ast_read(struct ast_channel *chan, int dropaudio) ast_frame_dump(chan->name, f, "<<"); chan->fin = FRAMECOUNT_INC(chan->fin); - if (f && f->datalen == 0 && f->data.ptr) { + if (f && f->frametype == AST_FRAME_CONTROL && f->subclass == AST_CONTROL_HOLD && f->datalen == 0 && f->data.ptr) { /* fix invalid pointer */ f->data.ptr = NULL; #ifdef AST_DEVMODE - ast_log(LOG_ERROR, "Found frame with src '%s' on channel '%s' with datalen zero, but non-null data pointer!\n", f->src, chan->name); + ast_log(LOG_ERROR, "Found HOLD frame with src '%s' on channel '%s' with datalen zero, but non-null data pointer!\n", f->src, chan->name); ast_frame_dump(chan->name, f, "<<"); #else - ast_debug(3, "Found frame with src '%s' on channel '%s' with datalen zero, but non-null data pointer!\n", f->src, chan->name); + ast_debug(3, "Found HOLD frame with src '%s' on channel '%s' with datalen zero, but non-null data pointer!\n", f->src, chan->name); #endif } |