attempt to fix MODAPP-129, seg when kicking many conference members quickly
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@9302 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
parent
5d4b5c3d1c
commit
1eeba1f85e
|
@ -2828,11 +2828,12 @@ static switch_status_t conf_api_sub_kick(conference_member_t *member, switch_str
|
||||||
if (stream != NULL) {
|
if (stream != NULL) {
|
||||||
stream->write_function(stream, "OK kicked %u\n", member->id);
|
stream->write_function(stream, "OK kicked %u\n", member->id);
|
||||||
}
|
}
|
||||||
if (test_eflag(member->conference, EFLAG_KICK_MEMBER) &&
|
if (member->conference && test_eflag(member->conference, EFLAG_KICK_MEMBER)) {
|
||||||
switch_event_create_subclass(&event, SWITCH_EVENT_CUSTOM, CONF_EVENT_MAINT) == SWITCH_STATUS_SUCCESS) {
|
if (switch_event_create_subclass(&event, SWITCH_EVENT_CUSTOM, CONF_EVENT_MAINT) == SWITCH_STATUS_SUCCESS) {
|
||||||
conference_add_event_member_data(member, event);
|
conference_add_event_member_data(member, event);
|
||||||
switch_event_add_header(event, SWITCH_STACK_BOTTOM, "Action", "kick-member");
|
switch_event_add_header(event, SWITCH_STACK_BOTTOM, "Action", "kick-member");
|
||||||
switch_event_fire(&event);
|
switch_event_fire(&event);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return SWITCH_STATUS_SUCCESS;
|
return SWITCH_STATUS_SUCCESS;
|
||||||
}
|
}
|
||||||
|
@ -3662,7 +3663,7 @@ switch_status_t conf_api_dispatch(conference_obj_t *conference, switch_stream_ha
|
||||||
conference_member_t *member = conference_member_get(conference, id);
|
conference_member_t *member = conference_member_get(conference, id);
|
||||||
|
|
||||||
if (member != NULL) {
|
if (member != NULL) {
|
||||||
pfn(conference_member_get(conference, id), stream, argv[argn + 2]);
|
pfn(member, stream, argv[argn + 2]);
|
||||||
} else {
|
} else {
|
||||||
stream->write_function(stream, "Non-Existant ID %u\n", id);
|
stream->write_function(stream, "Non-Existant ID %u\n", id);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue