diff options
author | Nathan Kinder <nkinder@redhat.com> | 2007-09-28 22:54:16 +0000 |
---|---|---|
committer | Nathan Kinder <nkinder@redhat.com> | 2007-09-28 22:54:16 +0000 |
commit | 55fc8e4dc7d4b1d90f45637f8679325ce198c278 (patch) | |
tree | 5825ef3ef63b92f21d72a5176e278ba5445806ed /ldap/servers/slapd/back-ldbm | |
parent | 4f9128fd0a5c76b4bed83a194cadd68ba47ed9e6 (diff) | |
download | ds-55fc8e4dc7d4b1d90f45637f8679325ce198c278.tar.gz ds-55fc8e4dc7d4b1d90f45637f8679325ce198c278.tar.xz ds-55fc8e4dc7d4b1d90f45637f8679325ce198c278.zip |
Resolves: 219586
Summary: Fixed leak of Slapi_Value in index code.
Diffstat (limited to 'ldap/servers/slapd/back-ldbm')
-rw-r--r-- | ldap/servers/slapd/back-ldbm/index.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/ldap/servers/slapd/back-ldbm/index.c b/ldap/servers/slapd/back-ldbm/index.c index ebd4d27d..dab71e28 100644 --- a/ldap/servers/slapd/back-ldbm/index.c +++ b/ldap/servers/slapd/back-ldbm/index.c @@ -535,7 +535,8 @@ index_add_mods( slapi_entry_attr_find( olde->ep_entry, mods[i]->mod_type, &curr_attr ); if ( mods_valueArray != NULL ) { for ( j = 0; mods_valueArray[j] != NULL; j++ ) { - valuearray_remove_value(curr_attr, evals, mods_valueArray[j]); + Slapi_Value *rval = valuearray_remove_value(curr_attr, evals, mods_valueArray[j]); + slapi_value_free( &rval ); } } @@ -549,7 +550,8 @@ index_add_mods( } } else { /* Remove duplicate value from deleted value array */ - valuearray_remove_value(curr_attr, deleted_valueArray, deleted_valueArray[j]); + Slapi_Value *rval = valuearray_remove_value(curr_attr, deleted_valueArray, deleted_valueArray[j]); + slapi_value_free( &rval ); j--; } } @@ -615,7 +617,8 @@ index_add_mods( } } else { /* Remove duplicate value from the mod list */ - valuearray_remove_value(curr_attr, deleted_valueArray, deleted_valueArray[j]); + Slapi_Value *rval = valuearray_remove_value(curr_attr, deleted_valueArray, deleted_valueArray[j]); + slapi_value_free( &rval ); j--; } } |