From 01ddb55c1318911936a263b14d7c5ecd36a84967 Mon Sep 17 00:00:00 2001 From: Wilfried Goesgens Date: Tue, 25 Jan 2011 00:22:49 +0100 Subject: [PATCH] libev migration: check pointer before free'ing it. --- citadel/modules/smtp/serv_smtpqueue.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/citadel/modules/smtp/serv_smtpqueue.c b/citadel/modules/smtp/serv_smtpqueue.c index 26c7e555d..b4ab58740 100644 --- a/citadel/modules/smtp/serv_smtpqueue.c +++ b/citadel/modules/smtp/serv_smtpqueue.c @@ -140,9 +140,13 @@ void RemoveQItem(OneQueItem *MyQItem) void FreeURL(ParsedURL** Url) { - FreeStrBuf(&(*Url)->URL); - free(*Url); - *Url = NULL; + if (*Url != NULL) { + FreeStrBuf(&(*Url)->URL); + if ((*Url)->Next != NULL) + FreeURL(&(*Url)->Next); + free(*Url); + *Url = NULL; + } } void FreeMailQEntry(void *qv) -- 2.30.2