* don't try to load some icons which are not present,
[modest] / src / widgets / modest-header-view-render.c
index 240a490..6226751 100644 (file)
@@ -40,7 +40,7 @@
 #include <string.h>
 
 
-void 
+static void 
 fill_list_of_caches (gpointer key, gpointer value, gpointer userdata)
 {
        GSList **send_queues = (GSList **) userdata;
@@ -128,11 +128,11 @@ get_pixbuf_for_flag (TnyHeaderFlags flag)
                return attachments_pixbuf;
        case TNY_HEADER_FLAG_HIGH_PRIORITY:
                if (G_UNLIKELY(!high_pixbuf))
-                       high_pixbuf = modest_platform_get_icon (MODEST_HEADER_ICON_HIGH_PRIORITY);
+                       high_pixbuf = modest_platform_get_icon (MODEST_HEADER_ICON_HIGH);
                return high_pixbuf;
        case TNY_HEADER_FLAG_LOW_PRIORITY:
                if (G_UNLIKELY(!low_pixbuf))
-                       low_pixbuf = modest_platform_get_icon (MODEST_HEADER_ICON_LOW_PRIORITY);
+                       low_pixbuf = modest_platform_get_icon (MODEST_HEADER_ICON_LOW);
                return low_pixbuf;
        default:
                if (G_UNLIKELY(!unread_pixbuf))
@@ -259,14 +259,25 @@ void
 _modest_header_view_compact_header_cell_data  (GtkTreeViewColumn *column,  GtkCellRenderer *renderer,
                                               GtkTreeModel *tree_model,  GtkTreeIter *iter,  gpointer user_data)
 {
-       TnyHeaderFlags flags, prior_flags;
-       gchar *address, *subject, *header;
-       time_t date;
-       ModestHeaderViewCompactHeaderMode header_mode;
+       g_return_if_fail (GTK_IS_TREE_VIEW_COLUMN (column));
+       g_return_if_fail (GTK_IS_CELL_RENDERER (renderer));
+       g_return_if_fail (GTK_IS_TREE_MODEL (tree_model));
+       
+       /* Note that GtkTreeModel is a GtkTreeModelFilter. */
+       
+       /* printf ("DEBUG: %s: tree_model gtype=%s\n", __FUNCTION__, G_OBJECT_TYPE_NAME (tree_model)); */
+       
+       TnyHeaderFlags flags = 0;
+       TnyHeaderFlags prior_flags = 0;
+       gchar *address = NULL;
+       gchar *subject = NULL;
+       gchar *header = NULL;
+       time_t date = 0;
+       
        GtkCellRenderer *recipient_cell, *date_or_status_cell, *subject_cell,
                *attach_cell, *priority_cell,
-               *recipient_box, *subject_box;
-       TnyHeader *msg_header;
+               *recipient_box, *subject_box = NULL;
+       TnyHeader *msg_header = NULL;
        gchar *display_date = NULL, *tmp_date = NULL;
 
        recipient_box = GTK_CELL_RENDERER (g_object_get_data (G_OBJECT (renderer), "recpt-box-renderer"));
@@ -277,7 +288,7 @@ _modest_header_view_compact_header_cell_data  (GtkTreeViewColumn *column,  GtkCe
        recipient_cell = GTK_CELL_RENDERER (g_object_get_data (G_OBJECT (recipient_box), "recipient-renderer"));
        date_or_status_cell = GTK_CELL_RENDERER (g_object_get_data (G_OBJECT (recipient_box), "date-renderer"));
 
-       header_mode = GPOINTER_TO_INT (user_data); 
+       ModestHeaderViewCompactHeaderMode header_mode = GPOINTER_TO_INT (user_data); 
 
        if (header_mode == MODEST_HEADER_VIEW_COMPACT_HEADER_MODE_IN)
                gtk_tree_model_get (tree_model, iter,
@@ -364,6 +375,8 @@ _modest_header_view_compact_header_cell_data  (GtkTreeViewColumn *column,  GtkCe
                g_free (tmp_date);
                g_free (display_date);
        }
+       if (msg_header != NULL)
+               g_object_unref (msg_header);
        set_common_flags (date_or_status_cell, flags);
 }