diff --git a/CHANGES b/CHANGES
index ce70cbde22a994c548eab0cfe0c8f7aa0d835686..c10af5f0475923c2a7520caec722eeb27d1a9dd8 100644
--- a/CHANGES
+++ b/CHANGES
@@ -19,6 +19,7 @@ OpenLDAP 2.4.13 Engineering
 	Added slapo-constraint support for constraining rename (ITS#5703)
 	Added slapo-constraint support for relax control (ITS#5705)
 	Added slapo-constraint "set" type (ITS#5702)
+	Fixed slapo-constraint filter parsing error (ITS#5751)
 	Fixed slapo-rwm rewriting undefined filter (ITS#5731)
 	Fixed slapo-rwm reusing freed filter (ITS#5732)
 	Added slapo-translucent try local bind when remote fails (ITS#5656)
diff --git a/servers/slapd/overlays/constraint.c b/servers/slapd/overlays/constraint.c
index 10361909bd97ced67a0529db4b8f038723171159..ec640d9dad044dfdcf8e02caf43adbf3eceb879e 100644
--- a/servers/slapd/overlays/constraint.c
+++ b/servers/slapd/overlays/constraint.c
@@ -642,6 +642,7 @@ constraint_violation( constraint *c, struct berval *bv, Operation *op, SlapReply
 			Debug( LDAP_DEBUG_ANY,
 				"%s constraint_violation uri filter=\"%s\" invalid\n",
 				op->o_log_prefix, filterstr.bv_val, 0 );
+			rc = LDAP_OTHER;
 
 		} else {
 			Debug(LDAP_DEBUG_TRACE, 
@@ -656,7 +657,7 @@ constraint_violation( constraint *c, struct berval *bv, Operation *op, SlapReply
 		}
 		op->o_tmpfree(filterstr.bv_val, op->o_tmpmemctx);
 
-		if((rc != LDAP_SUCCESS) && (rc != LDAP_NO_SUCH_OBJECT)) {
+		if ((rc != LDAP_SUCCESS) && (rc != LDAP_NO_SUCH_OBJECT)) {
 			return rc; /* unexpected error */
 		}