[asterisk-commits] russell: trunk r78029 - in /trunk: ./ channels/chan_iax2.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Thu Aug 2 21:05:03 CDT 2007


Author: russell
Date: Thu Aug  2 21:05:02 2007
New Revision: 78029

URL: http://svn.digium.com/view/asterisk?view=rev&rev=78029
Log:
Merged revisions 78028 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r78028 | russell | 2007-08-02 21:04:22 -0500 (Thu, 02 Aug 2007) | 6 lines

Don't reuse the timespec that was set to 0 in the previous timedwait as it
will just return immediately.  Also, fix some logic so the thread's lock
isn't unlocked twice in the weird case of dynamic threads getting acquired
right after a timeout.
(pointed out by SteveK)

........

Modified:
    trunk/   (props changed)
    trunk/channels/chan_iax2.c

Propchange: trunk/
------------------------------------------------------------------------------
Binary property 'branch-1.4-merged' - no diff available.

Modified: trunk/channels/chan_iax2.c
URL: http://svn.digium.com/view/asterisk/trunk/channels/chan_iax2.c?view=diff&rev=78029&r1=78028&r2=78029
==============================================================================
--- trunk/channels/chan_iax2.c (original)
+++ trunk/channels/chan_iax2.c Thu Aug  2 21:05:02 2007
@@ -8413,15 +8413,12 @@
 				/* Someone grabbed our thread *right* after we timed out.
 				 * Wait for them to set us up with something to do and signal
 				 * us to continue. */
-				ast_cond_timedwait(&thread->cond, &thread->lock, &ts);
-				ast_mutex_unlock(&thread->lock);
+				ast_cond_wait(&thread->cond, &thread->lock);
 			}
-			if (!t)
-				ast_mutex_unlock(&thread->lock);
 		} else {
 			ast_cond_wait(&thread->cond, &thread->lock);
-			ast_mutex_unlock(&thread->lock);
-		}
+		}
+		ast_mutex_unlock(&thread->lock);
 
 		/* Add ourselves to the active list now */
 		AST_LIST_LOCK(&active_list);




More information about the asterisk-commits mailing list