X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=webcit%2Fcontext_loop.c;h=7b646fbd4e8b8d555265554924d5110d1ff8c0d0;hb=efa5c510f812880225d8c7690a72233333504e88;hp=0107e0a38722b7e84f502ba7e4fd6450efedbf33;hpb=97c9db574968d15773c0c386819b45e32fc8340c;p=citadel.git diff --git a/webcit/context_loop.c b/webcit/context_loop.c index 0107e0a38..7b646fbd4 100644 --- a/webcit/context_loop.c +++ b/webcit/context_loop.c @@ -22,15 +22,12 @@ pthread_key_t MyConKey; /**< TSD key for MySession() */ /* * free the memory used for viewing atachments */ -void free_attachments(struct wcsession *sess) { - struct wc_attachment *att; - - while (sess->first_attachment != NULL) { - att = sess->first_attachment; - sess->first_attachment = sess->first_attachment->next; - free(att->data); - free(att); - } +void free_attachment(void *vattach) { + wc_attachment *att = (wc_attachment*) vattach; + FreeStrBuf(&att->content_type); + FreeStrBuf(&att->filename); + free(att->data); + free(att); } @@ -44,7 +41,7 @@ void DestroySession(struct wcsession **sessions_to_kill) if ((*sessions_to_kill)->cache_fold != NULL) { free((*sessions_to_kill)->cache_fold); } - free_attachments((*sessions_to_kill)); + DeleteHash(&((*sessions_to_kill)->attachments)); free_march_list((*sessions_to_kill)); DeleteHash(&((*sessions_to_kill)->hash_prefs)); DeleteHash(&((*sessions_to_kill)->IconBarSetttings));