From c4787c5cceaa1805840be791c97424664f67469b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Rafa=C3=ABl=20Carr=C3=A9?=
 <rafael.carre@savoirfairelinux.com>
Date: Fri, 8 Jul 2011 11:50:07 -0400
Subject: [PATCH] * #6392: fix a memory leak in abookfactory_load_module()

bug found by cppcheck
---
 sflphone-client-gnome/src/contacts/addrbookfactory.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/sflphone-client-gnome/src/contacts/addrbookfactory.c b/sflphone-client-gnome/src/contacts/addrbookfactory.c
index 6f6feead29..cd3e9a8af6 100644
--- a/sflphone-client-gnome/src/contacts/addrbookfactory.c
+++ b/sflphone-client-gnome/src/contacts/addrbookfactory.c
@@ -65,14 +65,14 @@ void abookfactory_load_module(AddrBookFactory *factory) {
 
     DEBUG("AddressbookFactory: Loading addressbook: %s", pluginpath);
 
-    ab = g_malloc(sizeof(AddrBookHandle));
-
     handle = dlopen(pluginpath, RTLD_LAZY);
+    g_free(pluginpath);
     if(handle == NULL) {
         ERROR("AddressbookFactory: Error: Could not load addressbook");
         return;
     }
-    g_free(pluginpath);
+
+    ab = g_malloc(sizeof(AddrBookHandle));
 
     ab->init = dlsym(handle, "addressbook_init");
     if(ab->init == NULL) {
-- 
GitLab