lynx-dev
[Top][All Lists]
Advanced

[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

reply via email to

[Prev in Thread] Current Thread [Next in Thread]