aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorqwell <qwell@f38db490-d61c-443f-a65b-d21fe96a405b>2007-08-02 20:22:40 +0000
committerqwell <qwell@f38db490-d61c-443f-a65b-d21fe96a405b>2007-08-02 20:22:40 +0000
commit4066a3e69c16d5809b0a32f427c0f4cff8806463 (patch)
tree1f9be7a5e4fac609de20c46e76dbbd2e15fc51c6
parentdd31f6ce403c39aad5b4974bde5fdbf010aa6194 (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
-rw-r--r--channels/chan_skinny.c5
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)