Author: rmudgett
Date: Thu Sep 25 16:00:08 2014
New Revision: 423894

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=423894
Log:
res_pjsip.c: Add missing off nominal cleanup in ast_sip_push_task_synchronous().

* Made memset the std struct in ast_sip_push_task_synchronous() because if
DEBUG_THREADS is enabled then uninitialized lock tracking data is used.

Modified:
    branches/12/res/res_pjsip.c

Modified: branches/12/res/res_pjsip.c
URL: 
http://svnview.digium.com/svn/asterisk/branches/12/res/res_pjsip.c?view=diff&rev=423894&r1=423893&r2=423894
==============================================================================
--- branches/12/res/res_pjsip.c (original)
+++ branches/12/res/res_pjsip.c Thu Sep 25 16:00:08 2014
@@ -2241,18 +2241,22 @@
                return sip_task(task_data);
        }
 
+       memset(&std, 0, sizeof(std));
        ast_mutex_init(&std.lock);
        ast_cond_init(&std.cond, NULL);
-       std.fail = std.complete = 0;
        std.task = sip_task;
        std.task_data = task_data;
 
        if (serializer) {
                if (ast_taskprocessor_push(serializer, sync_task, &std)) {
+                       ast_mutex_destroy(&std.lock);
+                       ast_cond_destroy(&std.cond);
                        return -1;
                }
        } else {
                if (ast_threadpool_push(sip_threadpool, sync_task, &std)) {
+                       ast_mutex_destroy(&std.lock);
+                       ast_cond_destroy(&std.cond);
                        return -1;
                }
        }


-- 
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

svn-commits mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/svn-commits

Reply via email to