chan_unistim: Unlock mutex in rare OOM condition.
authorWalter Doekes <walter+asterisk@wjd.nu>
Wed, 28 May 2014 09:43:53 +0000 (09:43 +0000)
committerWalter Doekes <walter+asterisk@wjd.nu>
Wed, 28 May 2014 09:43:53 +0000 (09:43 +0000)
#ASTERISK-23792 #close
Reported by: Peter Whisker

Review: https://reviewboard.asterisk.org/r/3567/
........

Merged revisions 414677 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 414678 from http://svn.asterisk.org/svn/asterisk/branches/12

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

channels/chan_unistim.c

index bdc3538..6762db3 100644 (file)
@@ -6384,10 +6384,10 @@ static struct unistim_device *build_device(const char *cat, const struct ast_var
                }
                d = d->next;
        }
+       ast_mutex_unlock(&devicelock);
        if (!(lt = ast_calloc(1, sizeof(*lt)))) {
                return NULL;
        }
-       ast_mutex_unlock(&devicelock);
        if (create) {
                if (!(d = ast_calloc(1, sizeof(*d)))) {
                        return NULL;