Fix double unlock of hintlock (bug #4205)
authorMark Spencer <markster@digium.com>
Sun, 8 May 2005 16:54:53 +0000 (16:54 +0000)
committerMark Spencer <markster@digium.com>
Sun, 8 May 2005 16:54:53 +0000 (16:54 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5602 65c4cc65-6c06-0410-ace0-fbb531ad65f3

pbx.c

diff --git a/pbx.c b/pbx.c
index 0f62e58..b5571ac 100755 (executable)
--- a/pbx.c
+++ b/pbx.c
@@ -1919,11 +1919,12 @@ int ast_extension_state_add(const char *context, const char *exten,
                        if (cblist->callback == callback) {
                                cblist->data = data;
                                ast_mutex_unlock(&hintlock);
+                               return 0;
                        }
                        cblist = cblist->next;
                }
        
-               /* Now inserts the callback */
+               /* Now insert the callback */
                cblist = malloc(sizeof(struct ast_state_cb));
                if (!cblist) {
                        ast_mutex_unlock(&hintlock);