|
|
|
|
@ -2043,10 +2043,6 @@ static void free_user(struct ast_vm_user *vmu)
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (!ast_strlen_zero(vmu->mailbox)) {
|
|
|
|
|
ast_delete_mwi_state_full(vmu->mailbox, vmu->context, NULL);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ast_free(vmu->email);
|
|
|
|
|
vmu->email = NULL;
|
|
|
|
|
ast_free(vmu->emailbody);
|
|
|
|
|
@ -2059,6 +2055,19 @@ static void free_user(struct ast_vm_user *vmu)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static void free_user_final(struct ast_vm_user *vmu)
|
|
|
|
|
{
|
|
|
|
|
if (!vmu) {
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (!ast_strlen_zero(vmu->mailbox)) {
|
|
|
|
|
ast_delete_mwi_state_full(vmu->mailbox, vmu->context, NULL);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
free_user(vmu);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static int vm_allocate_dh(struct vm_state *vms, struct ast_vm_user *vmu, int count_msg) {
|
|
|
|
|
|
|
|
|
|
int arraysize = (vmu->maxmsg > count_msg ? vmu->maxmsg : count_msg);
|
|
|
|
|
@ -13540,7 +13549,7 @@ static void free_vm_users(void)
|
|
|
|
|
AST_LIST_LOCK(&users);
|
|
|
|
|
while ((current = AST_LIST_REMOVE_HEAD(&users, list))) {
|
|
|
|
|
ast_set_flag(current, VM_ALLOCED);
|
|
|
|
|
free_user(current);
|
|
|
|
|
free_user_final(current);
|
|
|
|
|
}
|
|
|
|
|
AST_LIST_UNLOCK(&users);
|
|
|
|
|
}
|
|
|
|
|
|