mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-04-15 08:29:45 +00:00
POSIX says never to compare pthread_t directly
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@16501 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
parent
4f39fe92ab
commit
62341a9526
@ -50,6 +50,12 @@ typedef pthread_t switch_thread_id_t;
|
|||||||
|
|
||||||
SWITCH_DECLARE(switch_thread_id_t) switch_thread_self(void);
|
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
|
The pieces of apr we allow ppl to pass around between modules we typedef into our namespace and wrap all the functions
|
||||||
|
@ -79,6 +79,16 @@ SWITCH_DECLARE(switch_thread_id_t) switch_thread_self(void)
|
|||||||
#endif
|
#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)
|
SWITCH_DECLARE(void) switch_pool_clear(switch_memory_pool_t *p)
|
||||||
{
|
{
|
||||||
apr_pool_clear(p);
|
apr_pool_clear(p);
|
||||||
|
@ -1143,10 +1143,7 @@ SWITCH_DECLARE(void) switch_core_session_disable_heartbeat(switch_core_session_t
|
|||||||
|
|
||||||
SWITCH_DECLARE(switch_bool_t) switch_core_session_in_thread(switch_core_session_t *session)
|
SWITCH_DECLARE(switch_bool_t) switch_core_session_in_thread(switch_core_session_t *session)
|
||||||
{
|
{
|
||||||
if (switch_thread_self() == session->thread_id) {
|
return switch_thread_equal(switch_thread_self(), session->thread_id) ? SWITCH_TRUE : SWITCH_FALSE;
|
||||||
return SWITCH_TRUE;
|
|
||||||
}
|
|
||||||
return SWITCH_FALSE;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void *SWITCH_THREAD_FUNC switch_core_session_thread(switch_thread_t *thread, void *obj)
|
static void *SWITCH_THREAD_FUNC switch_core_session_thread(switch_thread_t *thread, void *obj)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user