aboutsummaryrefslogtreecommitdiffstats
path: root/channels/chan_misdn.c
diff options
context:
space:
mode:
authorcrichter <crichter@f38db490-d61c-443f-a65b-d21fe96a405b>2006-09-06 18:02:25 +0000
committercrichter <crichter@f38db490-d61c-443f-a65b-d21fe96a405b>2006-09-06 18:02:25 +0000
commitca9550cdf8771c0f66ab1b6953f4dcb437c68f4c (patch)
tree41f8b5ba17da5f8aec30e87e23c88ba3354648ea /channels/chan_misdn.c
parent295a02c1ab6035c8889b4d11e96ead680d02b13a (diff)
fixed pipe consuming bug when using chanIsAvail (#7878), also moved a debug log to the very begining of misdn_hangup.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@42126 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/chan_misdn.c')
-rw-r--r--channels/chan_misdn.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/channels/chan_misdn.c b/channels/chan_misdn.c
index 6815056f2..66c459b35 100644
--- a/channels/chan_misdn.c
+++ b/channels/chan_misdn.c
@@ -2225,10 +2225,10 @@ static int misdn_hangup(struct ast_channel *ast)
struct chan_list *p;
struct misdn_bchannel *bc=NULL;
- if (!ast || ! (p=MISDN_ASTERISK_TECH_PVT(ast) ) ) return -1;
-
ast_log(LOG_DEBUG, "misdn_hangup(%s)\n", ast->name);
+ if (!ast || ! (p=MISDN_ASTERISK_TECH_PVT(ast) ) ) return -1;
+
if (!p) {
chan_misdn_log(3, 0, "misdn_hangup called, without chan_list obj.\n");
return 0 ;
@@ -2252,6 +2252,8 @@ static int misdn_hangup(struct ast_channel *ast)
MISDN_ASTERISK_TECH_PVT(ast)=NULL;
cl_dequeue_chan(&cl_te, p);
+ close(p->pipe[0]);
+ close(p->pipe[1]);
free(p);
if (bc)