diff options
author | qwell <qwell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-08-02 20:22:40 +0000 |
---|---|---|
committer | qwell <qwell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-08-02 20:22:40 +0000 |
commit | 4066a3e69c16d5809b0a32f427c0f4cff8806463 (patch) | |
tree | 1f9be7a5e4fac609de20c46e76dbbd2e15fc51c6 /channels/chan_skinny.c | |
parent | dd31f6ce403c39aad5b4974bde5fdbf010aa6194 (diff) |
If a device disconnects, the session will go away.
If this happens during call setup, we need to give up.
Issue 10325.
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@77993 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/chan_skinny.c')
-rw-r--r-- | channels/chan_skinny.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/channels/chan_skinny.c b/channels/chan_skinny.c index a070d6a59..64c306f27 100644 --- a/channels/chan_skinny.c +++ b/channels/chan_skinny.c @@ -2727,6 +2727,11 @@ static int skinny_indicate(struct ast_channel *ast, int ind, const void *data, s struct skinnysession *s = d->session; char exten[AST_MAX_EXTENSION] = ""; + if (!s) { + ast_log(LOG_NOTICE, "Asked to indicate '%s' condition on channel %s, but session does not exist.\n", control2str(ind), ast->name); + return -1; + } + ast_copy_string(exten, S_OR(ast->macroexten, ast->exten), sizeof(exten)); if (skinnydebug) |