Different fix for memleak just committed. This belongs into
authorVolker Lendecke <vlendec@samba.org>
Tue, 1 Jul 2003 13:04:50 +0000 (13:04 +0000)
committerVolker Lendecke <vlendec@samba.org>
Tue, 1 Jul 2003 13:04:50 +0000 (13:04 +0000)
tdb_search_list_free.

Volker
(This used to be commit 0f3822c8e71426983b960ad49511efa8707159f9)

source3/lib/gencache.c
source3/passdb/secrets.c
source3/tdb/tdbutil.c

index b94e35eff4dd45266049630fdbb854664be7aa17..f3740e3e12789b2a3e89b831c43b55936f765914 100644 (file)
@@ -329,7 +329,6 @@ void gencache_iterate(void (*fn)(const char* key, const char *value, time_t time
                if (!databuf.dptr || databuf.dsize <= TIMEOUT_LEN) {
                        SAFE_FREE(databuf.dptr);
                        SAFE_FREE(keystr);
-                       SAFE_FREE(node->node_key.dptr);
                        node = node->next;
                        continue;
                }
@@ -345,7 +344,6 @@ void gencache_iterate(void (*fn)(const char* key, const char *value, time_t time
                SAFE_FREE(valstr);
                SAFE_FREE(entry);
                SAFE_FREE(keystr);
-               SAFE_FREE(node->node_key.dptr);
                node = node->next;
        }
        
index 57a539b09290f85bf0863e86c6d5ddac5847f63e..c039fe53b429922d3921861b57e09246089f079c 100644 (file)
@@ -616,8 +616,6 @@ NTSTATUS secrets_get_trusted_domains(TALLOC_CTX* ctx, int* enum_ctx, unsigned in
                        return NT_STATUS_NO_MEMORY;
                }
 
-               SAFE_FREE(k->node_key.dptr);
-                               
                packed_pass = secrets_fetch(secrets_key, &size);
                packed_size = tdb_trusted_dom_pass_unpack(packed_pass, size, pass);
                /* packed representation isn't needed anymore */
index 19dfe642df0ea1cc7fe400b8c83a2ab0411a30be..595062dc876cff01759a74b852c5f40d4878d779 100644 (file)
@@ -821,6 +821,7 @@ void tdb_search_list_free(TDB_LIST_NODE* node)
        
        while (node) {
                next_node = node->next;
+               SAFE_FREE(node->node_key.dptr);
                SAFE_FREE(node);
                node = next_node;
        };