]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
if the string field init fails, clean up the stuff that was allocated already
authorRussell Bryant <russell@russellbryant.com>
Thu, 24 May 2007 22:23:59 +0000 (22:23 +0000)
committerRussell Bryant <russell@russellbryant.com>
Thu, 24 May 2007 22:23:59 +0000 (22:23 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@66076 65c4cc65-6c06-0410-ace0-fbb531ad65f3

main/channel.c

index f7def7e903604f5522fe771bd32a265c7ce5622b..d830f1f8b39fa57ff6a7a5726bf6ac9e1f970b43 100644 (file)
@@ -742,8 +742,11 @@ struct ast_channel *ast_channel_alloc(int needqueue, int state, const char *cid_
                return NULL;
        }
        
-       if ((ast_string_field_init(tmp, 128)))
+       if ((ast_string_field_init(tmp, 128))) {
+               sched_context_destroy(tmp->sched);
+               free(tmp);
                return NULL;
+       }
 
        /* Don't bother initializing the last two FD here, because they
           will *always* be set just a few lines down (AST_TIMING_FD,