aboutsummaryrefslogtreecommitdiffstats
path: root/camel/providers
diff options
context:
space:
mode:
Diffstat (limited to 'camel/providers')
-rw-r--r--camel/providers/imap4/camel-imap4-folder.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/camel/providers/imap4/camel-imap4-folder.c b/camel/providers/imap4/camel-imap4-folder.c
index c5b94af89d..e06b5ab563 100644
--- a/camel/providers/imap4/camel-imap4-folder.c
+++ b/camel/providers/imap4/camel-imap4-folder.c
@@ -343,10 +343,10 @@ static void
uidset_init (struct _uidset *uidset, CamelFolderSummary *summary, size_t maxlen)
{
uidset->ranges = g_new (struct _uidset_range, 1);
+ uidset->ranges->first = (guint32) -1;
+ uidset->ranges->last = (guint32) -1;
uidset->ranges->next = NULL;
uidset->ranges->buflen = 0;
- uidset->ranges->first = 0;
- uidset->ranges->last = 0;
uidset->tail = uidset->ranges;
uidset->summary = summary;
@@ -365,6 +365,7 @@ uidset_add (struct _uidset *uidset, CamelMessageInfo *info)
guint32 index;
char *colon;
+ /* Note: depends on integer overflow for initial tail->last value */
for (index = tail->last + 1; index < messages->len; index++) {
if (info == messages->pdata[index])
break;