From 2ed2283a25a7a652a6df8ff662233e8d8ea4da76 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96man?= Date: Tue, 15 Jun 2010 17:43:41 +0000 Subject: [PATCH] Plug two memory leaks --- src/dvr/dvr_rec.c | 3 ++- src/plumbing/tsfix.c | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/dvr/dvr_rec.c b/src/dvr/dvr_rec.c index 6faaca25..1362e08f 100644 --- a/src/dvr/dvr_rec.c +++ b/src/dvr/dvr_rec.c @@ -472,6 +472,7 @@ dvr_thread(void *aux) switch(sm->sm_type) { case SMT_PACKET: pkt = sm->sm_data; + sm->sm_data = NULL; if(dispatch_clock > de->de_start - (60 * de->de_start_extra)) { pkt = pkt_merge_global(pkt); dvr_thread_new_pkt(de, pkt); @@ -559,7 +560,7 @@ dvr_thread(void *aux) break; } - free(sm); + streaming_msg_free(sm); pthread_mutex_lock(&sq->sq_mutex); } pthread_mutex_unlock(&sq->sq_mutex); diff --git a/src/plumbing/tsfix.c b/src/plumbing/tsfix.c index b9797cbf..30df73ba 100644 --- a/src/plumbing/tsfix.c +++ b/src/plumbing/tsfix.c @@ -209,6 +209,7 @@ normalize_ts(tsfix_t *tf, tfstream_t *tfs, th_pkt_t *pkt) streaming_message_t *sm = streaming_msg_create_pkt(pkt); streaming_target_deliver2(tf->tf_output, sm); + pkt_ref_dec(pkt); }