Sanity adjustments to pri_ss_thread for sig_pri environment.
authorRichard Mudgett <rmudgett@digium.com>
Thu, 6 Aug 2009 19:52:11 +0000 (19:52 +0000)
committerRichard Mudgett <rmudgett@digium.com>
Thu, 6 Aug 2009 19:52:11 +0000 (19:52 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@210866 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/sig_pri.c

index 4e824c7..af280b5 100644 (file)
@@ -601,11 +601,16 @@ static void *pri_ss_thread(void *data)
        int len;
        int timeout;
 
+       if (!chan) {
+               /* We lost the owner before we could get started. */
+               return NULL;
+       }
+
        /*
         * In the bizarre case where the channel has become a zombie before we
         * even get started here, abort safely.
         */
-       if (!p) {
+       if (!chan->tech_pvt) {
                ast_log(LOG_WARNING, "Channel became a zombie before simple switch could be started (%s)\n", chan->name);
                ast_hangup(chan);
                return NULL;
@@ -666,7 +671,7 @@ static void *pri_ss_thread(void *data)
 exit:
        res = sig_pri_play_tone(p, SIG_PRI_TONE_CONGESTION);
        if (res < 0)
-                       ast_log(LOG_WARNING, "Unable to play congestion tone on channel %d\n", p->channel);
+               ast_log(LOG_WARNING, "Unable to play congestion tone on channel %d\n", p->channel);
        ast_hangup(chan);
        return NULL;
 }