]> git.ipfire.org Git - thirdparty/openldap.git/commitdiff
Import getfilter() double free() bug fix from -devel
authorKurt Zeilenga <kurt@openldap.org>
Wed, 3 Feb 1999 17:39:07 +0000 (17:39 +0000)
committerKurt Zeilenga <kurt@openldap.org>
Wed, 3 Feb 1999 17:39:07 +0000 (17:39 +0000)
CHANGES
servers/slapd/filter.c

diff --git a/CHANGES b/CHANGES
index 5921dce114308ef8a6101653fdc91fb73eb3aeb0..c66645f4b640e4db6bc904a205da285c28c07728 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -7,6 +7,8 @@ Changes included in OpenLDAP 1.2
        Fixed -lldap/ldap_init() bug
        Fixed -lldap/ldap_sort_entries() zero entries bug
        Fixed slapd/slap_op memory/lock leak bug
+       Fixed slapd/back-ldbm IDL delete from ALLIDS bug
+       Fixed slapd/getfilter double free() bug
        Updated slapd/back-ldbm/id2children has_children logging
        Updated slapd/back-ldbm IDList handling
        Updated ldap_open(3) man page to note ldap_init() is preferred.
index 5f4c686571b0ec3203330cde949b6aab0287e24b..dff90b0446a16ccdbdb16f54dd2528c13168b416 100644 (file)
@@ -47,7 +47,6 @@ get_filter( Connection *conn, BerElement *ber, Filter **filt, char **fstr )
         */
 
        f = (Filter *) ch_malloc( sizeof(Filter) );
-       *filt = f;
        f->f_next = NULL;
 
        err = 0;
@@ -175,6 +174,8 @@ get_filter( Connection *conn, BerElement *ber, Filter **filt, char **fstr )
                if ( *fstr != NULL ) {
                        free( *fstr );
                }
+       } else {
+               *filt = f;
        }
 
        Debug( LDAP_DEBUG_FILTER, "end get_filter %d\n", err, 0, 0 );