summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNot Zed <NotZed@Ximian.com>2004-05-24 08:02:10 +0000
committerMichael Zucci <zucchi@src.gnome.org>2004-05-24 08:02:10 +0000
commitb94806a75a7dcc5b07ee3b07c93c0411d860b4f2 (patch)
tree49988f6c2f45c213f092b8a431b31a530cc551e0
parent246e116725dfe3ae1935185b9549a23c16b753b6 (diff)
downloadevolution-data-server-b94806a75a7dcc5b07ee3b07c93c0411d860b4f2.tar.gz
fix/rearrange logic. It was using the wrong working pointer.
2004-05-24 Not Zed <NotZed@Ximian.com> * camel-mime-utils.c (camel_header_newsgroups_decode): fix/rearrange logic. It was using the wrong working pointer.
-rw-r--r--camel/ChangeLog5
-rw-r--r--camel/camel-mime-utils.c16
2 files changed, 12 insertions, 9 deletions
diff --git a/camel/ChangeLog b/camel/ChangeLog
index 421c84145..3e543d06e 100644
--- a/camel/ChangeLog
+++ b/camel/ChangeLog
@@ -1,3 +1,8 @@
+2004-05-24 Not Zed <NotZed@Ximian.com>
+
+ * camel-mime-utils.c (camel_header_newsgroups_decode):
+ fix/rearrange logic. It was using the wrong working pointer.
+
2004-05-24 Sivaiah Nallagatla <snallagatla@novell.com>
* camel-provider.h : added CAMEL_PROVIDER_CONF_HIDDEN to
diff --git a/camel/camel-mime-utils.c b/camel/camel-mime-utils.c
index 43d680012..35766e0b4 100644
--- a/camel/camel-mime-utils.c
+++ b/camel/camel-mime-utils.c
@@ -2855,26 +2855,24 @@ camel_header_newsgroups_decode(const char *in)
const char *inptr = in;
register char c;
struct _camel_header_newsgroup *head, *last, *ng;
+ const char *start;
head = NULL;
last = (struct _camel_header_newsgroup *)&head;
- c = *in;
- while (c) {
- const char *start;
-
+ do {
header_decode_lwsp(&inptr);
- start = in;
- while ((c = *in++) && !camel_mime_is_lwsp(c) && c != ',')
+ start = inptr;
+ while ((c = *inptr++) && !camel_mime_is_lwsp(c) && c != ',')
;
- if (start != in) {
+ if (start != inptr-1) {
ng = g_malloc(sizeof(*ng));
- ng->newsgroup = g_strndup(start, in-start);
+ ng->newsgroup = g_strndup(start, inptr-start-1);
ng->next = NULL;
last->next = ng;
last = ng;
}
- }
+ } while (c);
return head;
}