Removed extra references when deleting folders
[modest] / src / widgets / modest-folder-view.c
index 56584af..770fb2a 100644 (file)
@@ -737,7 +737,7 @@ text_cell_data  (GtkTreeViewColumn *column,
 
        /* Convert INBOX */
        if (type == TNY_FOLDER_TYPE_INBOX &&
-           !g_ascii_strcasecmp (fname, "Inbox")) {
+           g_str_has_suffix (fname, "Inbox")) {
                g_free (item_name);
                item_name = g_strdup (_("mcen_me_folder_inbox"));
        }
@@ -928,7 +928,7 @@ get_composite_icons (const gchar *icon_code,
 {
        ThreePixbufs *retval;
 
-       if (!*pixbuf) {
+       if (pixbuf && !*pixbuf) {
                GdkPixbuf *icon;
                icon = modest_platform_get_icon (icon_code, FOLDER_ICON_SIZE);
                if (icon) {
@@ -938,23 +938,29 @@ get_composite_icons (const gchar *icon_code,
                }
        }
 
-       if (!*pixbuf_open && pixbuf && *pixbuf)
+       if (pixbuf_open && !*pixbuf_open && pixbuf && *pixbuf)
                *pixbuf_open = get_composite_pixbuf ("qgn_list_gene_fldr_exp",
                                                     FOLDER_ICON_SIZE,
                                                     *pixbuf);
 
-       if (!*pixbuf_close && pixbuf && *pixbuf)
+       if (pixbuf_close && !*pixbuf_close && pixbuf && *pixbuf)
                *pixbuf_close = get_composite_pixbuf ("qgn_list_gene_fldr_clp",
                                                      FOLDER_ICON_SIZE,
                                                      *pixbuf);
 
        retval = g_slice_new0 (ThreePixbufs);
-       if (*pixbuf)
+       if (pixbuf && *pixbuf)
                retval->pixbuf = g_object_ref (*pixbuf);
-       if (*pixbuf_open)
+       else
+               retval->pixbuf = NULL;
+       if (pixbuf_open && *pixbuf_open)
                retval->pixbuf_open = g_object_ref (*pixbuf_open);
-       if (*pixbuf_close)
+       else
+               retval->pixbuf_open = NULL;
+       if (pixbuf_close && *pixbuf_close)
                retval->pixbuf_close = g_object_ref (*pixbuf_close);
+       else
+               retval->pixbuf_close = NULL;
 
        return retval;
 }
@@ -2368,7 +2374,7 @@ modest_folder_view_update_model (ModestFolderView *self,
                                                self,
                                                NULL);
 
-       GtkTreeModel *old_tny_model;
+       GtkTreeModel *old_tny_model = NULL;
        if (get_inner_models (self, NULL, NULL, &old_tny_model)) {
                if (priv->signal_handlers > 0) {
                        priv->signal_handlers = modest_signal_mgr_disconnect (priv->signal_handlers,
@@ -2388,7 +2394,7 @@ modest_folder_view_update_model (ModestFolderView *self,
        priv->signal_handlers = modest_signal_mgr_connect (priv->signal_handlers,
                                                           G_OBJECT (model),
                                                           "activity-changed",
-                                                          G_CALLBACK (on_activity_changed), 
+                                                          G_CALLBACK (on_activity_changed),
                                                           self);
 #endif