rendered paste body if ((last_member = interface_exists(q, interface))) {
if ((look = q->members) == last_member) {
ast_mutex_lock(&last_member->member_lock);
q->members = last_member->next;
q->membercount--;
ast_mutex_unlock(&last_member->member_lock);
} else {
while (look != NULL) {
if (look->next == last_member) {
ast_mutex_lock(&last_member->member_lock);
look->next = last_member->next;
q->membercount--;
ast_mutex_unlock(&last_member->member_lock);
break;
} else {
look = look->next;
}
}
}
manager_event(EVENT_FLAG_AGENT, "QueueMemberRemoved",
"Queue: %s\r\n"
"Location: %s\r\n"
"MemberName: %s\r\n",
q->name, last_member->interface, last_member->membername);
usleep(1);
ast_mutex_lock(&last_member->member_lock);
ast_mutex_unlock(&last_member->member_lock);
ast_mutex_destroy(&last_member->member_lock);
free(last_member);