aboutsummaryrefslogtreecommitdiffstats
path: root/channel.c
diff options
context:
space:
mode:
authormarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2003-11-07 03:48:03 +0000
committermarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2003-11-07 03:48:03 +0000
commitf28aebe732e59fd64618170d6a9b7abc2c37b9e9 (patch)
treec4edd2bf6ad4c427f484e1b66d5a068bd339aba3 /channel.c
parent53a01891fedf3ea59312111e0d0cfd8025349bfe (diff)
Gotta actually free the frame...
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@1704 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channel.c')
-rwxr-xr-xchannel.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/channel.c b/channel.c
index 74b192c11..89b70f6fe 100755
--- a/channel.c
+++ b/channel.c
@@ -1064,8 +1064,10 @@ struct ast_frame *ast_read(struct ast_channel *chan)
f = chan->pvt->readq;
chan->pvt->readq = f->next;
/* Interpret hangup and return NULL */
- if ((f->frametype == AST_FRAME_CONTROL) && (f->subclass == AST_CONTROL_HANGUP))
+ if ((f->frametype == AST_FRAME_CONTROL) && (f->subclass == AST_CONTROL_HANGUP)) {
+ ast_frfree(f);
f = NULL;
+ }
} else {
chan->blocker = pthread_self();
if (chan->exception) {