res_smdi: Clean up memory leak

Change-Id: I1e33290929e1aa7c5b9cb513f8254f2884974de8
This commit is contained in:
Sean Bright 2017-08-24 09:35:45 -04:00
parent 5570cf22fa
commit 7937d5b8b3
1 changed files with 4 additions and 6 deletions

View File

@ -608,13 +608,12 @@ static void *smdi_read(void *iface_p)
ast_debug(1, "Read a 'D' ... it's an MD message.\n");
if (!(md_msg = ast_calloc(1, sizeof(*md_msg)))) {
md_msg = ao2_alloc(sizeof(*md_msg), NULL);
if (!md_msg) {
ao2_ref(iface, -1);
return NULL;
}
md_msg = ao2_alloc(sizeof(*md_msg), NULL);
/* read the message desk number */
for (i = 0; i < sizeof(md_msg->mesg_desk_num) - 1; i++) {
md_msg->mesg_desk_num[i] = fgetc(iface->file);
@ -710,13 +709,12 @@ static void *smdi_read(void *iface_p)
ast_debug(1, "Read a 'W', it's an MWI message. (No more debug coming for MWI messages)\n");
if (!(mwi_msg = ast_calloc(1, sizeof(*mwi_msg)))) {
mwi_msg = ao2_alloc(sizeof(*mwi_msg), NULL);
if (!mwi_msg) {
ao2_ref(iface, -1);
return NULL;
}
mwi_msg = ao2_alloc(sizeof(*mwi_msg), NULL);
/* discard the 'I' (from 'MWI') */
fgetc(iface->file);