fix FSCORE-261
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@10994 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
parent
bb974720e9
commit
5c426fc51d
|
@ -168,7 +168,7 @@ SWITCH_DECLARE(FILE *) switch_core_data_channel(switch_text_channel_t channel)
|
||||||
|
|
||||||
SWITCH_DECLARE(void) switch_core_remove_state_handler(const switch_state_handler_table_t *state_handler)
|
SWITCH_DECLARE(void) switch_core_remove_state_handler(const switch_state_handler_table_t *state_handler)
|
||||||
{
|
{
|
||||||
int index, total = 0;
|
int index, tmp_index = 0;
|
||||||
const switch_state_handler_table_t *tmp[SWITCH_MAX_STATE_HANDLERS+1] = { 0 };
|
const switch_state_handler_table_t *tmp[SWITCH_MAX_STATE_HANDLERS+1] = { 0 };
|
||||||
|
|
||||||
switch_mutex_lock(runtime.global_mutex);
|
switch_mutex_lock(runtime.global_mutex);
|
||||||
|
@ -179,13 +179,12 @@ SWITCH_DECLARE(void) switch_core_remove_state_handler(const switch_state_handler
|
||||||
if (cur == state_handler) {
|
if (cur == state_handler) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
tmp[index] = runtime.state_handlers[index];
|
tmp[tmp_index++] = cur;
|
||||||
total++;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
runtime.state_handler_index = 0;
|
runtime.state_handler_index = 0;
|
||||||
|
|
||||||
for (index = 0; index < total; index++) {
|
for (index = 0; index < tmp_index; index++) {
|
||||||
runtime.state_handlers[runtime.state_handler_index++] = tmp[index];
|
runtime.state_handlers[runtime.state_handler_index++] = tmp[index];
|
||||||
}
|
}
|
||||||
switch_mutex_unlock(runtime.global_mutex);
|
switch_mutex_unlock(runtime.global_mutex);
|
||||||
|
|
Loading…
Reference in New Issue