diff --git a/CHANGES b/CHANGES
index a3da8e38a8aa746e58981be8d81ff5c37d1124df..15f297e59378ca64e473463e1fc1356c7418a7df 100644
--- a/CHANGES
+++ b/CHANGES
@@ -3,6 +3,7 @@ OpenLDAP 2.4 Change Log
 OpenLDAP 2.4.20 Engineering
 	Fixed libldap uninitialized return value (ITS#6355)
 	Fixed slapd debug handling of LDAP_DEBUG_ANY (ITS#6324)
+	Fixed slapd termination for one level dns (ITS#6338)
 	Fixed slapd-ldap leak (ITS#6326)
 	Fixed slapd-relay bind segfault (ITS#6337)
 	Fixed slapo-memberof operational attr updates (ITS#6329)
diff --git a/servers/slapd/dn.c b/servers/slapd/dn.c
index 35051299e6792272665f81ee669cfb5b1a6df6e3..3534e7ff9f8e0380194b8d889b330785f9b5421c 100644
--- a/servers/slapd/dn.c
+++ b/servers/slapd/dn.c
@@ -964,8 +964,8 @@ dnParent(
 
 	/* one-level dn */
 	if ( p == NULL ) {
-		pdn->bv_len = 0;
 		pdn->bv_val = dn->bv_val + dn->bv_len;
+		pdn->bv_len = 0;
 		return;
 	}