Make sure index >= 0 before initializing
authorMark Spencer <markster@digium.com>
Tue, 27 Jul 2004 02:19:52 +0000 (02:19 +0000)
committerMark Spencer <markster@digium.com>
Tue, 27 Jul 2004 02:19:52 +0000 (02:19 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3518 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/chan_zap.c

index de3f67a..c1e276f 100755 (executable)
@@ -3750,6 +3750,13 @@ struct ast_frame  *zt_read(struct ast_channel *ast)
        
        index = zt_get_index(ast, p, 0);
        
+       /* Hang up if we don't really exist */
+       if (index < 0)  {
+               ast_log(LOG_WARNING, "We dont exist?\n");
+               ast_mutex_unlock(&p->lock);
+               return NULL;
+       }
+       
        p->subs[index].f.frametype = AST_FRAME_NULL;
        p->subs[index].f.datalen = 0;
        p->subs[index].f.samples = 0;
@@ -3761,13 +3768,6 @@ struct ast_frame  *zt_read(struct ast_channel *ast)
        p->subs[index].f.src = "zt_read";
        p->subs[index].f.data = NULL;
        
-       /* Hang up if we don't really exist */
-       if (index < 0)  {
-               ast_log(LOG_WARNING, "We dont exist?\n");
-               ast_mutex_unlock(&p->lock);
-               return NULL;
-       }
-       
        /* make sure it sends initial key state as first frame */
        if (p->radio && (!p->firstradio))
        {