mirror of
https://github.com/signalwire/freeswitch.git
synced 2026-10-30 15:14:17 +00:00
FS-10189: [core] switch_core_add_state_handler runtime.state_handler_index may exceed SWITCH_MAX_STATE_HANDLERS #resolve
This commit is contained in:
1 parent
a59056a69d
commit
a09c9cfa7a
1 file changed
+3
-2
+3
-2
@@ -310,12 +310,13 @@ SWITCH_DECLARE(int) switch_core_add_state_handler(const switch_state_handler_tab
|
|||||||
int index;
|
int index;
|
||||||
|
|
||||||
switch_mutex_lock(runtime.global_mutex);
|
switch_mutex_lock(runtime.global_mutex);
|
||||||
index = runtime.state_handler_index++;
|
index = runtime.state_handler_index;
|
||||||
|
|
||||||
if (runtime.state_handler_index >= SWITCH_MAX_STATE_HANDLERS) {
|
if (index > (SWITCH_MAX_STATE_HANDLERS - 1)) {
|
||||||
index = -1;
|
index = -1;
|
||||||
} else {
|
} else {
|
||||||
runtime.state_handlers[index] = state_handler;
|
runtime.state_handlers[index] = state_handler;
|
||||||
|
runtime.state_handler_index++;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch_mutex_unlock(runtime.global_mutex);
|
switch_mutex_unlock(runtime.global_mutex);
|
||||||
|
|||||||
Reference in new issue
Block a user