diff --git htdocs/wp-includes/user.php htdocs/wp-includes/user.php
index e602a3e..242bd47 100755
--- htdocs/wp-includes/user.php
+++ htdocs/wp-includes/user.php
@@ -1230,17 +1230,42 @@ function get_blogs_of_user( $user_id, $all = false ) {
  * @return bool
  */
 function is_user_member_of_blog( $user_id = 0, $blog_id = 0 ) {
-	$user_id = (int) $user_id;
-	$blog_id = (int) $blog_id;
+    global $wpdb;
 
-	if ( empty( $user_id ) )
-		$user_id = get_current_user_id();
+    if( ! is_multisite() )
+        return true;
 
-	if ( empty( $blog_id ) )
-		$blog_id = get_current_blog_id();
+    $user_id = (int) $user_id;
+    $blog_id = (int) $blog_id;
+
+    if ( empty( $user_id ) )
+        $user_id = get_current_user_id();
+
+    if ( empty( $user_id ) )
+        return false;
+
+    if ( empty( $blog_id ) )
+        $blog_id = get_current_blog_id();
+
+    $blog = get_blog_details( $blog_id );
+
+    if( ! $blog || ! isset( $blog->domain ) || $blog->archived || $blog->spam || $blog->deleted )
+        return false;
+
+    $keys = get_user_meta( $user_id );
+    if ( empty( $keys ) )
+        return false;
+
+    $base_capabilities_key = $wpdb->base_prefix . 'capabilities';
+    $site_capabilities_key = $wpdb->base_prefix . $blog_id . '_capabilities';
+
+    if ( isset( $keys[ $base_capabilities_key ] ) && defined( 'MULTISITE' ) && $blog_id == 1 )
+        return true;
+
+    if ( isset( $keys[ $site_capabilities_key ] ) )
+        return true;
 
-	$blogs = get_blogs_of_user( $user_id );
-	return array_key_exists( $blog_id, $blogs );
+    return false;
 }
 
 /**
