Index: src/wp-includes/user.php
===================================================================
--- src/wp-includes/user.php	(revisione 32453)
+++ src/wp-includes/user.php	(copia locale)
@@ -1191,7 +1191,7 @@
 			continue;
 
 		$blog_id = (int) $blog_id;
-		$blog = get_blog_details( $blog_id );
+		$blog    = get_blog_details( $blog_id );
 		if ( $blog && isset( $blog->domain ) && ( $all || ( ! $blog->archived && ! $blog->spam && ! $blog->deleted ) ) ) {
 			$blogs[ $blog_id ] = (object) array(
 				'userblog_id' => $blog_id,
@@ -1200,9 +1200,9 @@
 				'path'        => $blog->path,
 				'site_id'     => $blog->site_id,
 				'siteurl'     => $blog->siteurl,
-				'archived'    => 0,
-				'spam'        => 0,
-				'deleted'     => 0
+				'archived'    => $blog->archived,
+				'spam'        => $blog->spam,
+				'deleted'     => $blog->deleted,
 			);
 		}
 	}
Index: tests/phpunit/tests/user/multisite.php
===================================================================
--- tests/phpunit/tests/user/multisite.php	(revisione 32453)
+++ tests/phpunit/tests/user/multisite.php	(copia locale)
@@ -94,6 +94,12 @@
 		$blog_ids_of_user = array_keys( get_blogs_of_user( $user1_id, true ) );
 		$this->assertEquals( $blog_ids, $blog_ids_of_user );
 
+		// Check if these sites have the expected data
+		$blogs_of_user = get_blogs_of_user( $user1_id, true );
+		$this->assertEquals( 1, $blogs_of_user[ $blog_ids[0] ]->spam );
+		$this->assertEquals( 1, $blogs_of_user[ $blog_ids[1] ]->archived );
+		$this->assertEquals( 1, $blogs_of_user[ $blog_ids[2] ]->deleted );
+
 		unset( $blog_ids[0] );
 		unset( $blog_ids[1] );
 		unset( $blog_ids[2] );
