added precautions to not go insane when two matching cookies end up in the
authorDaniel Stenberg <daniel@haxx.se>
Mon, 7 Jan 2002 14:56:15 +0000 (14:56 +0000)
committerDaniel Stenberg <daniel@haxx.se>
Mon, 7 Jan 2002 14:56:15 +0000 (14:56 +0000)
cookie list, even though they're not supposed to do that...

lib/cookie.c

index 6970811..9ffdd2a 100644 (file)
@@ -377,8 +377,15 @@ Curl_cookie_add(struct CookieInfo *c,
 
         free(co);   /* free the newly alloced memory */
         co = clist; /* point to the previous struct instead */
-      }
 
+        /* We have replaced a cookie, now skip the rest of the list but
+           make sure the 'lastc' pointer is properly set */
+        do {
+          lastc = clist;
+          clist = clist->next;
+        } while(clist);
+        break;
+      }
     }
     lastc = clist;
     clist = clist->next;