Mercurial > hg > mlmmj
changeset 120:154b486fefd5
When retrieving header info, make sure to get all headers since we might have
e.g. several To: headers.
author | mmj |
---|---|
date | Sat, 29 May 2004 23:36:19 +1000 |
parents | 00a00cf394e7 |
children | bd18a247ae4a |
files | src/do_all_the_voodo_here.c |
diffstat | 1 files changed, 9 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/src/do_all_the_voodo_here.c Sat May 29 20:44:21 2004 +1000 +++ b/src/do_all_the_voodo_here.c Sat May 29 23:36:19 2004 +1000 @@ -42,13 +42,16 @@ tokenlen = strlen(readhdrs[i].token); linelen = strlen(line); if(strncmp(line, readhdrs[i].token, tokenlen) == 0) { + readhdrs[i].valuecount++; valuelen = linelen - tokenlen + 1; - if(!readhdrs[i].value) { - readhdrs[i].value = malloc(valuelen + 1); - memcpy(readhdrs[i].value, line+tokenlen, - valuelen); - } - chomp(readhdrs[i].value); + readhdrs[i].values = + (char **)realloc(readhdrs[i].values, + readhdrs[i].valuecount * sizeof(char *)); + readhdrs[i].values[readhdrs[i].valuecount - 1] = + (char *)malloc(valuelen + 1); + strncpy(readhdrs[i].values[readhdrs[i].valuecount - 1], + line+tokenlen, valuelen); + chomp(readhdrs[i].values[readhdrs[i].valuecount - 1]); } i++; }