From 28ad7dc4a1e78d55a17fe4c0b20823791ce74caa Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Mon, 25 Sep 2000 22:14:42 +0000 Subject: [PATCH] a single cookie does not require a trailing semicolon anymore --- lib/cookie.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/lib/cookie.c b/lib/cookie.c index e21e88b40..01c3f2d2f 100644 --- a/lib/cookie.c +++ b/lib/cookie.c @@ -99,8 +99,9 @@ struct Cookie *cookie_add(struct CookieInfo *c, semiptr=strchr(lineptr, ';'); /* first, find a semicolon */ ptr = lineptr; - while(semiptr) { - *semiptr='\0'; /* zero terminate for a while */ + do { + if(semiptr) + *semiptr='\0'; /* zero terminate for a while */ /* we have a = pair or a 'secure' word here */ if(strchr(ptr, '=')) { name[0]=what[0]=0; /* init the buffers */ @@ -156,12 +157,15 @@ struct Cookie *cookie_add(struct CookieInfo *c, ; /* unsupported keyword without assign! */ } } + if(!semiptr) + continue; /* we already know there are no more cookies */ + *semiptr=';'; /* put the semicolon back */ ptr=semiptr+1; while(ptr && *ptr && isspace((int)*ptr)) ptr++; semiptr=strchr(ptr, ';'); /* now, find the next semicolon */ - } + } while(semiptr); } else { /* This line is NOT a HTTP header style line, we do offer support for