Merged revisions 95577 via svnmerge from
authorMark Michelson <mmichelson@digium.com>
Mon, 31 Dec 2007 23:44:45 +0000 (23:44 +0000)
committerMark Michelson <mmichelson@digium.com>
Mon, 31 Dec 2007 23:44:45 +0000 (23:44 +0000)
commit3b830da05393facb7474a3039e51b05273f1032b
tree5c2e41f399a57d2270bb61088887f84642478257
parente0dfa91db8014d4f95e6d974cc914c42c65a5cb5
Merged revisions 95577 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r95577 | mmichelson | 2007-12-31 17:43:13 -0600 (Mon, 31 Dec 2007) | 9 lines

Avoiding a potentially bad locking situation. ast_merge_contexts_and_delete writelocks the conlock, then
calls ast_hint_extension, which attempts to readlock the same lock. Recursion with read-write locks is
dangerous, so the inner lock needs to be removed. I did this by copying the "guts" of ast_hint_extension
into ast_merge_contexts_and_delete (sans the extra lock).

(this change is inspired by the locking problems seen in issue #11080, but I have no idea if this is the
problematic area experienced by the reporters of that issue)

........

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