[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
lynx-dev [dev17] More cookie crumbs ...
From: |
Kim DeVaughn |
Subject: |
lynx-dev [dev17] More cookie crumbs ... |
Date: |
Fri, 19 Feb 1999 16:06:53 -0800 |
Looks like -dev.17 has picked up a few new cookie-related memory
leaks:
>Memory leak detected.
>Pointer: 0x1631c0
>Contains:: |
>ByteSize: 1
>FileName: ./LYCookie.c
>LineCount: 2674
>
>Memory leak detected.
>Pointer: 0x1631a0
>Contains:: |
>ByteSize: 1
>FileName: ./LYCookie.c
>LineCount: 2674
>
>Memory leak detected.
>Pointer: 0x163180
>Contains:: |
>ByteSize: 1
>FileName: ./LYCookie.c
>LineCount: 2674
>
>Memory leak detected.
>Pointer: 0x163160
>Contains:: |
>ByteSize: 1
>FileName: ./LYCookie.c
>LineCount: 2674
>
>Memory leak detected.
>Pointer: 0x163150
>Contains:: |
>ByteSize: 1
>FileName: ./LYCookie.c
>LineCount: 2674
>
>Total memory leakage this run: 5
which appear to be a missing FREE() for the StrAllocCopy() noted in
this code fragment from LYCookie.c:2645;
>/* cookie_domain_flag_set
>** ----------------------
>** All purpose function to handle setting domain flags for a
>** comma-delimited list of domains. cookie_domain_flags handles
>** invcheck behavior, as well as accept/reject behavior. - BJP
>*/
>
>PUBLIC void cookie_domain_flag_set ARGS2(
> char *, domainstr,
> int, flag)
>{
> domain_entry *de = NULL;
> domain_entry *de2 = NULL;
> HTList *hl = NULL;
> char *dstr = NULL;
> char *strsmall = NULL;
> int isexisting = FALSE;
>
> /*
> * Is this the first domain we're handling? If so, initialize
> * domain_list.
> */
>
> if (domain_list == NULL) {
> atexit(LYCookieJar_free);
> domain_list = HTList_new();
> total_cookies = 0;
> }
>
===> StrAllocCopy(dstr, domainstr); <===[**** cookie crumb maker (?) ****]
>
> while ((strsmall = LYstrsep(&dstr, ",")) != 0) {
>
> /*
> * Check the list of existing domains to see if this is a
> * re-setting of an already existing domains -- if so, just
> * change the behavior, if not, create a new domain entry.
> */
>
> for (hl = domain_list; hl != NULL; hl = hl->next) {
> de2 = (domain_entry *)hl->object;
> if ((de2 != NULL && de2->domain != NULL) &&
> !strcmp(strsmall, de2->domain)) {
> isexisting = TRUE;
> break;
> } else {
> isexisting = FALSE;
Am I the only one who runs with --enable-find-leaks on, while doing
development ...?
/kim
- lynx-dev [dev17] More cookie crumbs ...,
Kim DeVaughn <=