/* $OpenLDAP$ */
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
*
- * Copyright 2000-2013 The OpenLDAP Foundation.
+ * Copyright 2000-2017 The OpenLDAP Foundation.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
fprintf( stderr, "%s: line %d: %s\n",
fname, lineno, c_reply->msg );
}
+fail:
+#ifdef LDAP_COMP_MATCH
+ ch_free( cr );
+#endif
goto done;
}
fname, lineno, c_reply->msg );
}
rc = LDAP_UNWILLING_TO_PERFORM;
- goto done;
+ goto fail;
}
if( IS_SLAP_INDEX( mask, SLAP_INDEX_APPROX ) && !(
fname, lineno, c_reply->msg );
}
rc = LDAP_INAPPROPRIATE_MATCHING;
- goto done;
+ goto fail;
}
if( IS_SLAP_INDEX( mask, SLAP_INDEX_EQUALITY ) && !(
fname, lineno, c_reply->msg );
}
rc = LDAP_INAPPROPRIATE_MATCHING;
- goto done;
+ goto fail;
}
if( IS_SLAP_INDEX( mask, SLAP_INDEX_SUBSTR ) && !(
fname, lineno, c_reply->msg );
}
rc = LDAP_INAPPROPRIATE_MATCHING;
- goto done;
+ goto fail;
}
Debug( LDAP_DEBUG_CONFIG, "index %s 0x%04lx\n",
* just add the extracted component reference
* in the AttrInfo
*/
+ ch_free( a );
rc = insert_component_reference( cr, &a_cr->ai_cr );
if ( rc != LDAP_SUCCESS) {
fprintf( stderr, " error during inserting component reference in %s ", attrs[i]);
rc = LDAP_PARAM_ERROR;
- goto done;
+ goto fail;
}
continue;
} else {
if ( rc != LDAP_SUCCESS) {
fprintf( stderr, " error during inserting component reference in %s ", attrs[i]);
rc = LDAP_PARAM_ERROR;
- goto done;
+ ch_free( a );
+ goto fail;
}
}
}