mirror of
https://github.com/signalwire/freeswitch.git
synced 2026-07-23 20:51:58 +00:00
FS-8811 #resolve [FS 1.7 crashes intermittently]
This commit is contained in:
@@ -390,6 +390,7 @@ struct switch_file_handle {
|
||||
char *stream_name;
|
||||
char *modname;
|
||||
switch_mm_t mm;
|
||||
switch_mutex_t *flag_mutex;
|
||||
};
|
||||
|
||||
/*! \brief Abstract interface to an asr module */
|
||||
|
||||
@@ -635,17 +635,17 @@ SWITCH_DECLARE(unsigned char) switch_char_to_rfc2833(char key);
|
||||
\param obj the object to set the flags on
|
||||
\param flag the or'd list of flags to set
|
||||
*/
|
||||
#define switch_set_flag_locked(obj, flag) assert(obj->flag_mutex != NULL);\
|
||||
switch_mutex_lock(obj->flag_mutex);\
|
||||
#define switch_set_flag_locked(obj, flag) assert((obj)->flag_mutex != NULL); \
|
||||
switch_mutex_lock((obj)->flag_mutex); \
|
||||
(obj)->flags |= (flag);\
|
||||
switch_mutex_unlock(obj->flag_mutex);
|
||||
switch_mutex_unlock((obj)->flag_mutex);
|
||||
|
||||
/*!
|
||||
\brief Clear a flag on an arbitrary object
|
||||
\param obj the object to test
|
||||
\param flag the or'd list of flags to clear
|
||||
*/
|
||||
#define switch_clear_flag_locked(obj, flag) switch_mutex_lock(obj->flag_mutex); (obj)->flags &= ~(flag); switch_mutex_unlock(obj->flag_mutex);
|
||||
#define switch_clear_flag_locked(obj, flag) switch_mutex_lock((obj)->flag_mutex); (obj)->flags &= ~(flag); switch_mutex_unlock((obj)->flag_mutex);
|
||||
|
||||
/*!
|
||||
\brief Clear a flag on an arbitrary object while locked
|
||||
|
||||
Reference in New Issue
Block a user