]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
- lock channel before looking for a channel variable
authorMichiel van Baak <michiel@vanbaak.info>
Wed, 2 Sep 2009 20:21:51 +0000 (20:21 +0000)
committerMichiel van Baak <michiel@vanbaak.info>
Wed, 2 Sep 2009 20:21:51 +0000 (20:21 +0000)
- Init the parkings list member of struct parkinglot.
Thanks Sean for the explanation why this should be here.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@215622 65c4cc65-6c06-0410-ace0-fbb531ad65f3

main/features.c

index 2e8bb175d433777b8dee989bbd5939c9f0bca491..0a4336f3bebc3e02641a15a589559064478ae6d2 100644 (file)
@@ -649,7 +649,9 @@ static struct parkeduser *park_space_reserve(struct ast_channel *chan,
        /* Lock parking list */
        AST_LIST_LOCK(&parkinglot->parkings);
        /* Check for channel variable PARKINGEXTEN */
+       ast_channel_lock(chan);
        parkingexten = pbx_builtin_getvar_helper(chan, "PARKINGEXTEN");
+       ast_channel_unlock(chan);
        if (!ast_strlen_zero(parkingexten)) {
                /*!\note The API forces us to specify a numeric parking slot, even
                 * though the architecture would tend to support non-numeric extensions
@@ -3729,6 +3731,7 @@ static struct ast_parkinglot *create_parkinglot(char *name)
                return NULL;
        
        ast_copy_string(newlot->name, name, sizeof(newlot->name));
+       AST_LIST_HEAD_INIT(&newlot->parkings);
 
        return newlot;
 }