[svn-commits] rmudgett: branch rmudgett/stasis_cache r408873 - /team/rmudgett/stasis_cache/...

SVN commits to the Digium repositories svn-commits at lists.digium.com
Mon Feb 24 18:06:12 CST 2014


Author: rmudgett
Date: Mon Feb 24 18:06:07 2014
New Revision: 408873

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=408873
Log:
Add missing cleanup in off nominal path of dispatch_message().

Modified:
    team/rmudgett/stasis_cache/main/stasis.c

Modified: team/rmudgett/stasis_cache/main/stasis.c
URL: http://svnview.digium.com/svn/asterisk/team/rmudgett/stasis_cache/main/stasis.c?view=diff&rev=408873&r1=408872&r2=408873
==============================================================================
--- team/rmudgett/stasis_cache/main/stasis.c (original)
+++ team/rmudgett/stasis_cache/main/stasis.c Mon Feb 24 18:06:07 2014
@@ -575,9 +575,7 @@
 	 */
 	ao2_bump(message);
 	if (!synchronous) {
-		if (ast_taskprocessor_push_local(sub->mailbox,
-			                             dispatch_exec_async,
-			                             message) != 0) {
+		if (ast_taskprocessor_push_local(sub->mailbox, dispatch_exec_async, message)) {
 			/* Push failed; ugh. */
 			ast_log(LOG_ERROR, "Dropping async dispatch\n");
 			ao2_cleanup(message);
@@ -590,12 +588,12 @@
 		std.complete = 0;
 		std.task_data = message;
 
-		if (ast_taskprocessor_push_local(sub->mailbox,
-			                             dispatch_exec_sync,
-			                             &std)) {
+		if (ast_taskprocessor_push_local(sub->mailbox, dispatch_exec_sync, &std)) {
 			/* Push failed; ugh. */
 			ast_log(LOG_ERROR, "Dropping sync dispatch\n");
 			ao2_cleanup(message);
+			ast_mutex_destroy(&std.lock);
+			ast_cond_destroy(&std.cond);
 			return;
 		}
 




More information about the svn-commits mailing list