summaryrefslogtreecommitdiff
path: root/channels
diff options
context:
space:
mode:
authorTilghman Lesher <tilghman@meg.abyt.es>2008-06-19 22:59:41 +0000
committerTilghman Lesher <tilghman@meg.abyt.es>2008-06-19 22:59:41 +0000
commite746aa2043f14c3f08a2e9da24796422835f6271 (patch)
tree9dee567da849a8fab8a53b292cce79277f021803 /channels
parent1d2ac41c075fa9ef333476f2ed17d3d03091fa06 (diff)
Merged revisions 124182 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r124182 | tilghman | 2008-06-19 17:53:22 -0500 (Thu, 19 Jun 2008) | 7 lines It's possible for a hangup to be received, even just after the initial cid spill. (closes issue #12453) Reported by: Alex728 Patches: 20080604__bug12453.diff.txt uploaded by Corydon76 (license 14) ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@124183 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels')
-rw-r--r--channels/chan_dahdi.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/channels/chan_dahdi.c b/channels/chan_dahdi.c
index 7d3795bc9..2b1ea8a19 100644
--- a/channels/chan_dahdi.c
+++ b/channels/chan_dahdi.c
@@ -6881,7 +6881,11 @@ static void *ss_thread(void *data)
ast_hangup(chan);
return NULL;
}
- f = ast_read(chan);
+ if (!(f = ast_read(chan))) {
+ ast_log(LOG_WARNING, "Hangup received waiting for ring. Exiting simple switch\n");
+ ast_hangup(chan);
+ return NULL;
+ }
ast_frfree(f);
if (chan->_state == AST_STATE_RING ||
chan->_state == AST_STATE_RINGING)