diff --git a/gnome/src/actions.c b/gnome/src/actions.c
index 697efb4f58c838691e85d510518884c7c61248ab..9445d102d6e7b81e656617e98ca8747e3f8ab038 100644
--- a/gnome/src/actions.c
+++ b/gnome/src/actions.c
@@ -1084,7 +1084,7 @@ void sflphone_fill_history(void)
 
     entries = entries_orig = dbus_get_history();
 
-    while (*entries) {
+    while (entries && *entries) {
         gchar *current_entry = *entries;
 
         // Parsed a conference
diff --git a/gnome/src/contacts/calllist.c b/gnome/src/contacts/calllist.c
index fd20bec21cfe732b720cba06aa2a561547b5c93c..fcbebd8b103293e2a8d9d87cb5dbfc8eb42ef497 100644
--- a/gnome/src/contacts/calllist.c
+++ b/gnome/src/contacts/calllist.c
@@ -113,28 +113,6 @@ calllist_reset(calltab_t* tab)
     tab->callQueue = g_queue_new();
 }
 
-void calllist_add_history_call(callable_obj_t *obj)
-{
-    if (eel_gconf_get_integer(HISTORY_ENABLED)) {
-        QueueElement *element = g_new0(QueueElement, 1);
-        element->type = HIST_CALL;
-        element->elem.call = obj;
-        g_queue_push_tail(history_tab->callQueue, (gpointer) element);
-        calltree_add_history_entry(obj, NULL);
-    }
-}
-
-void calllist_add_history_conference(conference_obj_t *obj)
-{
-    if (eel_gconf_get_integer(HISTORY_ENABLED)) {
-        QueueElement *element = g_new0(QueueElement, 1);
-        element->type = HIST_CONFERENCE;
-        element->elem.conf = obj;
-        g_queue_push_tail(history_tab->callQueue, (gpointer) element);
-        calltree_add_conference_to_history(obj);
-    }
-}
-
 void
 calllist_add_call(calltab_t* tab, callable_obj_t * c)
 {
diff --git a/gnome/src/contacts/calllist.h b/gnome/src/contacts/calllist.h
index efa87713b8ffc223ef84ee82a3c6f4b61a124f20..7eeab9b928265420493cf8f49e2ebb248c317339 100644
--- a/gnome/src/contacts/calllist.h
+++ b/gnome/src/contacts/calllist.h
@@ -69,10 +69,6 @@ typedef struct {
 void
 calllist_add_contact (gchar *, gchar *, contact_type_t, GdkPixbuf *);
 
-void calllist_add_history_call (callable_obj_t *obj);
-
-void calllist_add_history_conference (conference_obj_t *obj);
-
 /** This function empty and free the call list. */
 void
 calllist_clean (calltab_t* tab);
diff --git a/gnome/src/contacts/calltree.c b/gnome/src/contacts/calltree.c
index c1abb7d000cb084759d846bc3e1181842fd19d5f..7e8cbfa26998416d74b80e776302119849f6b75e 100644
--- a/gnome/src/contacts/calltree.c
+++ b/gnome/src/contacts/calltree.c
@@ -177,8 +177,8 @@ call_selected_cb(GtkTreeSelection *sel, void* data UNUSED)
 
 /* A row is activated when it is double clicked */
 void
-row_activated(GtkTreeView       *tree_view UNUSED,
-              GtkTreePath       *path UNUSED,
+row_activated(GtkTreeView *tree_view UNUSED,
+              GtkTreePath *path UNUSED,
               GtkTreeViewColumn *column UNUSED,
               void * data UNUSED)
 {
@@ -445,7 +445,6 @@ calltree_create(calltab_t* tab, int searchbar_type)
     gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(calltree_sw), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
     gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(calltree_sw), GTK_SHADOW_IN);
 
-
     tab->store = gtk_tree_store_new(4,
                                     GDK_TYPE_PIXBUF, /* Icon */
                                     G_TYPE_STRING,   /* Description */
@@ -959,8 +958,6 @@ void calltree_add_conference_to_current_calls(conference_obj_t* conf)
 
     DEBUG("Calltree: Add conference %s", conf->_confID);
 
-    gchar *description = g_markup_printf_escaped("<b>%s</b>", "");
-
     GtkTreeIter iter;
     gtk_tree_store_append(current_calls_tab->store, &iter, NULL);
 
@@ -1063,12 +1060,14 @@ void calltree_add_conference_to_current_calls(conference_obj_t* conf)
 
     DEBUG("Calltree: Add conference to tree store");
 
+    gchar *description = g_markup_printf_escaped("<b>%s</b>", "");
     gtk_tree_store_set(current_calls_tab->store, &iter,
                        COLUMN_ACCOUNT_PIXBUF, pixbuf,
                        COLUMN_ACCOUNT_DESC, description,
                        COLUMN_ACCOUNT_SECURITY_PIXBUF, pixbuf_security,
                        COLUMN_ACCOUNT_PTR, conf,
                        -1);
+    g_free(description);
 
     if (pixbuf)
         g_object_unref(pixbuf);
@@ -1076,7 +1075,6 @@ void calltree_add_conference_to_current_calls(conference_obj_t* conf)
     if (pixbuf_security)
         g_object_unref(pixbuf_security);
 
-
     for (GSList *part = conf->participant_list; part; part = g_slist_next(part)) {
         const gchar * const call_id = (gchar *) part->data;
         callable_obj_t *call = calllist_get_call(current_calls_tab, call_id);
@@ -1106,7 +1104,7 @@ void calltree_remove_conference_recursive(calltab_t* tab, const conference_obj_t
 
         /* if the nth child of parent has one or more children */
         if (gtk_tree_model_iter_nth_child(model, &iter_parent, parent, i)) {
-            /* RECRUSION! */
+            /* RECURSION! */
             if (gtk_tree_model_iter_has_child(model, &iter_parent))
                 calltree_remove_conference_recursive(tab, conf, &iter_parent);