# HG changeset patch # User William Ehlhardt # Date 1186984341 0 # Node ID 8926e15873ca22044fbf14225b1d38d40f70c797 # Parent 919395a01483b5cb2cddffe368e9f65bc07a2430 - Add a helper function to destroy x509_ca_elements, and use it where needed. diff -r 919395a01483 -r 8926e15873ca libpurple/certificate.c --- a/libpurple/certificate.c Mon Aug 13 05:46:57 2007 +0000 +++ b/libpurple/certificate.c Mon Aug 13 05:52:21 2007 +0000 @@ -598,6 +598,16 @@ PurpleCertificate *crt; } x509_ca_element; +static void +x509_ca_element_free(x509_ca_element *el) +{ + if (NULL == el) return; + + g_free(el->dn); + purple_certificate_destroy(el->crt); + g_free(el); +} + /** System directory to probe for CA certificates */ /* TODO: The current path likely won't work on anything but Debian! Fix! */ static const gchar *x509_ca_syspath = "/etc/ssl/certs/"; @@ -716,11 +726,7 @@ for (l = x509_ca_certs; l; l = l->next) { x509_ca_element *el = l->data; - - /* TODO: Make this its own function */ - g_free(el->dn); - purple_certificate_destroy(el->crt); - g_free(el); + x509_ca_element_free(el); } g_list_free(x509_ca_certs); x509_ca_certs = NULL;