Files
asterisk/funcs
Richard Mudgett 0764556d4f Merged revisions 337973 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

........
  r337973 | rmudgett | 2011-09-26 14:30:39 -0500 (Mon, 26 Sep 2011) | 30 lines
  
  Fix deadlock when using dummy channels.
  
  Dummy channels created by ast_dummy_channel_alloc() should be destoyed by
  ast_channel_unref().  Using ast_channel_release() needlessly grabs the
  channel container lock and can cause a deadlock as a result.
  
  * Analyzed use of ast_dummy_channel_alloc() and made use
  ast_channel_unref() when done with the dummy channel.  (Primary reason for
  the reported deadlock.)
  
  * Made app_dial.c:dial_exec_full() not call ast_call() holding any channel
  locks.  Chan_local could not perform deadlock avoidance correctly.
  (Potential deadlock exposed by this issue.  Secondary reason for the
  reported deadlock since the held lock was part of the deadlock chain.)
  
  * Fixed some uses of ast_dummy_channel_alloc() not checking the returned
  channel pointer for failure.
  
  * Fixed some potential chan=NULL pointer usage in func_odbc.c.  Protected
  by testing the bogus_chan value.
  
  * Fixed needlessly clearing a 1024 char auto array when setting the first
  char to zero is enough in manager.c:action_getvar().
  
  (closes issue ASTERISK-18613)
  Reported by: Thomas Arimont
  Patches:
        jira_asterisk_18613_v1.8.patch (license #5621) patch uploaded by rmudgett
  Tested by: Thomas Arimont
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@337974 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-09-26 19:35:23 +00:00
..
2011-09-21 20:52:21 +00:00