git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@16501
d0543943-73ff-0310-b7d9-
9358b9ac24b2
SWITCH_DECLARE(switch_thread_id_t) switch_thread_self(void);
+/*! \brief Compare two thread ids
+ * \param tid1 1st Thread ID to compare
+ * \param tid2 2nd Thread ID to compare
+*/
+SWITCH_DECLARE(int) switch_thread_equal(switch_thread_id_t tid1, switch_thread_id_t tid2);
+
/*
The pieces of apr we allow ppl to pass around between modules we typedef into our namespace and wrap all the functions
#endif
}
+SWITCH_DECLARE(int) switch_thread_equal(switch_thread_id_t tid1, switch_thread_id_t tid2)
+{
+#ifdef WIN32
+ return (tid1 == tid2);
+#else
+ return apr_os_thread_equal(tid1, tid2);
+#endif
+
+}
+
SWITCH_DECLARE(void) switch_pool_clear(switch_memory_pool_t *p)
{
apr_pool_clear(p);
SWITCH_DECLARE(switch_bool_t) switch_core_session_in_thread(switch_core_session_t *session)
{
- if (switch_thread_self() == session->thread_id) {
- return SWITCH_TRUE;
- }
- return SWITCH_FALSE;
+ return switch_thread_equal(switch_thread_self(), session->thread_id) ? SWITCH_TRUE : SWITCH_FALSE;
}
static void *SWITCH_THREAD_FUNC switch_core_session_thread(switch_thread_t *thread, void *obj)