diff --git a/src/gpacmp4/stbl_write.c b/src/gpacmp4/stbl_write.c index 07b844f1..96a43233 100644 --- a/src/gpacmp4/stbl_write.c +++ b/src/gpacmp4/stbl_write.c @@ -143,7 +143,10 @@ GF_Err stbl_AddDTS(GF_SampleTableBox *stbl, u64 DTS, u32 *sampleNumber, u32 Last if (stts->nb_entries + 2 >= stts->alloc_size) { stts->alloc_size += 2; stts->entries = gf_realloc(stts->entries, sizeof(GF_SttsEntry)*stts->alloc_size); - if (!stts->entries) return GF_OUT_OF_MEM; + if (!stts->entries){ + gf_free(DTSs); + return GF_OUT_OF_MEM; + } memset(&stts->entries[stts->nb_entries], 0, sizeof(GF_SttsEntry)*(stts->alloc_size - stts->nb_entries)); } diff --git a/src/lib_ccx/networking.c b/src/lib_ccx/networking.c index 62950263..be7012b2 100644 --- a/src/lib_ccx/networking.c +++ b/src/lib_ccx/networking.c @@ -291,6 +291,8 @@ void net_send_epg( if (write_block(srv_sd, EPG_DATA, epg, len) <= 0) fprintf(stderr, "Can't send EPG data\n"); + free(epg); + return; }