diff --git a/apps/app_confbridge.c b/apps/app_confbridge.c index ed6a8a973c91e9145d3593d8645efcc271cdf441..07069edf0a2588627039e1f57b3591df04f59b70 100644 --- a/apps/app_confbridge.c +++ b/apps/app_confbridge.c @@ -2283,6 +2283,7 @@ static char *complete_confbridge_participant(const char *conference_name, const static char *handle_cli_confbridge_kick(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a) { struct confbridge_conference *conference; + int not_found; switch (cmd) { case CLI_INIT: @@ -2310,11 +2311,12 @@ static char *handle_cli_confbridge_kick(struct ast_cli_entry *e, int cmd, struct ast_cli(a->fd, "No conference bridge named '%s' found!\n", a->argv[2]); return CLI_SUCCESS; } - if (kick_conference_participant(conference, a->argv[3])) { + not_found = kick_conference_participant(conference, a->argv[3]); + ao2_ref(conference, -1); + if (not_found) { ast_cli(a->fd, "No participant named '%s' found!\n", a->argv[3]); return CLI_SUCCESS; } - ao2_ref(conference, -1); ast_cli(a->fd, "Participant '%s' kicked out of conference '%s'\n", a->argv[3], a->argv[2]); return CLI_SUCCESS; } @@ -2948,7 +2950,7 @@ static int action_confbridgekick(struct mansession *s, const struct message *m) const char *conference_name = astman_get_header(m, "Conference"); const char *channel = astman_get_header(m, "Channel"); struct confbridge_conference *conference; - int found = 0; + int found; if (ast_strlen_zero(conference_name)) { astman_send_error(s, m, "No Conference name provided.");