Index: src/wp-includes/class-wp-user.php
===================================================================
--- src/wp-includes/class-wp-user.php	(revision 43010)
+++ src/wp-includes/class-wp-user.php	(working copy)
@@ -736,11 +736,12 @@
 		$args = array_merge( array( $cap, $this->ID ), $args );
 		$caps = call_user_func_array( 'map_meta_cap', $args );
 
-		// Multisite super admin has all caps by definition, Unless specifically denied.
+		if ( in_array( 'do_not_allow', $caps, true ) ) {
+			return false;
+		}
+
+		// Multisite super admin has all caps by definition.
 		if ( is_multisite() && is_super_admin( $this->ID ) ) {
-			if ( in_array( 'do_not_allow', $caps ) ) {
-				return false;
-			}
 			return true;
 		}
 
@@ -760,9 +761,6 @@
 		// Everyone is allowed to exist.
 		$capabilities['exist'] = true;
 
-		// Nobody is allowed to do things they are not allowed to do.
-		unset( $capabilities['do_not_allow'] );
-
 		// Must have ALL requested caps.
 		foreach ( (array) $caps as $cap ) {
 			if ( empty( $capabilities[ $cap ] ) ) {
