aboutsummaryrefslogtreecommitdiffstats
path: root/camel/providers/nntp/camel-nntp-newsrc.c
diff options
context:
space:
mode:
authorNot Zed <NotZed@Ximian.com>2001-11-28 07:05:30 +0800
committerMichael Zucci <zucchi@src.gnome.org>2001-11-28 07:05:30 +0800
commit4b89a1c6b25b16241b216531a1c70ccb95e55d6d (patch)
treec59fbce05405e55d4fd01b8754a37f160a7ccec3 /camel/providers/nntp/camel-nntp-newsrc.c
parent45aa3c76643dfc428fc9eaf19857239f71e16dc5 (diff)
downloadgsoc2013-evolution-4b89a1c6b25b16241b216531a1c70ccb95e55d6d.tar
gsoc2013-evolution-4b89a1c6b25b16241b216531a1c70ccb95e55d6d.tar.gz
gsoc2013-evolution-4b89a1c6b25b16241b216531a1c70ccb95e55d6d.tar.bz2
gsoc2013-evolution-4b89a1c6b25b16241b216531a1c70ccb95e55d6d.tar.lz
gsoc2013-evolution-4b89a1c6b25b16241b216531a1c70ccb95e55d6d.tar.xz
gsoc2013-evolution-4b89a1c6b25b16241b216531a1c70ccb95e55d6d.tar.zst
gsoc2013-evolution-4b89a1c6b25b16241b216531a1c70ccb95e55d6d.zip
If the uid doesn't have a ',' in it, fail to crash.
2001-11-25 Not Zed <NotZed@Ximian.com> * providers/nntp/camel-nntp-folder.c (nntp_folder_get_message): If the uid doesn't have a ',' in it, fail to crash. * providers/nntp/camel-nntp-newsrc.c (camel_nntp_newsrc_article_is_read): check group != NULL before scanning. (camel_nntp_newsrc_get_highest_article_read): " (camel_nntp_newsrc_get_num_articles_read): " (camel_nntp_newsrc_mark_range_read): " * providers/nntp/camel-nntp-store.c (camel_nntp_store_get_overview_fmt): IF we dont have nntp_list_follows, dont try and get a list response. (nntp_store_get_folder_info): Set path part of folderinfo. svn path=/trunk/; revision=14799
Diffstat (limited to 'camel/providers/nntp/camel-nntp-newsrc.c')
-rw-r--r--camel/providers/nntp/camel-nntp-newsrc.c29
1 files changed, 20 insertions, 9 deletions
diff --git a/camel/providers/nntp/camel-nntp-newsrc.c b/camel/providers/nntp/camel-nntp-newsrc.c
index 8c7ef1d5cd..8475a137a2 100644
--- a/camel/providers/nntp/camel-nntp-newsrc.c
+++ b/camel/providers/nntp/camel-nntp-newsrc.c
@@ -198,7 +198,11 @@ camel_nntp_newsrc_get_highest_article_read (CamelNNTPNewsrc *newsrc, const char
NEWSRC_LOCK(newsrc, lock);
group = g_hash_table_lookup (newsrc->groups, group_name);
- ret = camel_nntp_newsrc_group_get_highest_article_read (newsrc, group);
+
+ if (group)
+ ret = camel_nntp_newsrc_group_get_highest_article_read (newsrc, group);
+ else
+ ret = 0;
NEWSRC_UNLOCK(newsrc, lock);
@@ -214,7 +218,11 @@ camel_nntp_newsrc_get_num_articles_read (CamelNNTPNewsrc *newsrc, const char *gr
NEWSRC_LOCK(newsrc, lock);
group = g_hash_table_lookup (newsrc->groups, group_name);
- ret = camel_nntp_newsrc_group_get_num_articles_read (newsrc, group);
+
+ if (group)
+ ret = camel_nntp_newsrc_group_get_num_articles_read (newsrc, group);
+ else
+ ret = 0;
NEWSRC_UNLOCK(newsrc, lock);
@@ -244,7 +252,8 @@ camel_nntp_newsrc_mark_range_read(CamelNNTPNewsrc *newsrc, const char *group_nam
NEWSRC_LOCK(newsrc, lock);
group = g_hash_table_lookup (newsrc->groups, group_name);
- camel_nntp_newsrc_group_mark_range_read (newsrc, group, low, high);
+ if (group)
+ camel_nntp_newsrc_group_mark_range_read (newsrc, group, low, high);
NEWSRC_UNLOCK(newsrc, lock);
}
@@ -257,12 +266,14 @@ camel_nntp_newsrc_article_is_read (CamelNNTPNewsrc *newsrc, const char *group_na
NEWSRC_LOCK(newsrc, lock);
group = g_hash_table_lookup (newsrc->groups, group_name);
-
- for (i = 0; i < group->ranges->len; i++) {
- if (num >= g_array_index (group->ranges, ArticleRange, i).low &&
- num <= g_array_index (group->ranges, ArticleRange, i).high) {
- ret = TRUE;
- break;
+
+ if (group) {
+ for (i = 0; i < group->ranges->len; i++) {
+ if (num >= g_array_index (group->ranges, ArticleRange, i).low &&
+ num <= g_array_index (group->ranges, ArticleRange, i).high) {
+ ret = TRUE;
+ break;
+ }
}
}