aboutsummaryrefslogtreecommitdiffstats
path: root/mail/e-mail-label-list-store.c
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@redhat.com>2009-09-21 11:05:59 +0800
committerMatthew Barnes <mbarnes@redhat.com>2009-09-21 11:05:59 +0800
commit0b0fb7a3a5ea531c5f17aa7e2de3bb421311a8ba (patch)
tree0b99f266b1dd783eabd3c6960e6ff0c46e2fdca4 /mail/e-mail-label-list-store.c
parent28de5cf05a31122a72c4c4fe49d958f8ba952c1f (diff)
downloadgsoc2013-evolution-0b0fb7a3a5ea531c5f17aa7e2de3bb421311a8ba.tar
gsoc2013-evolution-0b0fb7a3a5ea531c5f17aa7e2de3bb421311a8ba.tar.gz
gsoc2013-evolution-0b0fb7a3a5ea531c5f17aa7e2de3bb421311a8ba.tar.bz2
gsoc2013-evolution-0b0fb7a3a5ea531c5f17aa7e2de3bb421311a8ba.tar.lz
gsoc2013-evolution-0b0fb7a3a5ea531c5f17aa7e2de3bb421311a8ba.tar.xz
gsoc2013-evolution-0b0fb7a3a5ea531c5f17aa7e2de3bb421311a8ba.tar.zst
gsoc2013-evolution-0b0fb7a3a5ea531c5f17aa7e2de3bb421311a8ba.zip
Another attempt at fixing a label-related crash.
The reporter's label list in GConf had the default labels, but without the mnemonic underscores. So they weren't recognized as default labels. As a last ditch effort, generate a tag from the label name to ensure that e_mail_label_list_store_get_tag() never returns NULL.
Diffstat (limited to 'mail/e-mail-label-list-store.c')
-rw-r--r--mail/e-mail-label-list-store.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/mail/e-mail-label-list-store.c b/mail/e-mail-label-list-store.c
index c1ca4d82af..a8953333a4 100644
--- a/mail/e-mail-label-list-store.c
+++ b/mail/e-mail-label-list-store.c
@@ -427,6 +427,12 @@ e_mail_label_list_store_get_tag (EMailLabelListStore *store,
}
}
+ /* XXX Still no luck? The label list in GConf must be screwed up.
+ * We must not return NULL because the tag is used as a key in
+ * the index hash table, so generate a tag from the name. */
+ if (result == NULL)
+ result = mail_label_list_store_tag_from_name (strv[0]);
+
g_strfreev (strv);
return result;