Index: wp-admin/network/themes.php
===================================================================
--- wp-admin/network/themes.php	(revision 16239)
+++ wp-admin/network/themes.php	(working copy)
@@ -23,7 +23,7 @@
 	$allowed_themes = get_site_option( 'allowedthemes' );	
 	switch ( $action ) {
 		case 'network-enable':
-			$allowed_themes[ $_GET['theme'] ] = 1;
+			$allowed_themes[ $_GET['theme'] ] = true;
 			update_site_option( 'allowedthemes', $allowed_themes );
 			wp_redirect( wp_get_referer() ); // @todo add_query_arg for update message
 			exit;			
@@ -41,7 +41,7 @@
 				exit;
 			}						
 			foreach( (array) $themes as $theme )
-				$allowed_themes[ $theme ] = 1;
+				$allowed_themes[ $theme ] = true;
 			update_site_option( 'allowedthemes', $allowed_themes );
 			break;
 		case 'network-disable-selected':
Index: wp-admin/includes/class-wp-ms-themes-list-table.php
===================================================================
--- wp-admin/includes/class-wp-ms-themes-list-table.php	(revision 16239)
+++ wp-admin/includes/class-wp-ms-themes-list-table.php	(working copy)
@@ -58,7 +58,8 @@
 		$current = get_site_transient( 'update_themes' );
 
 		foreach ( (array) $themes['all'] as $key => $theme ) {
-			if ( array_key_exists( $theme['Template'], $allowed_themes ) ) {
+			$theme_key = esc_html( $theme['Stylesheet'] );
+			if ( isset( $allowed_themes [ $theme_key ] ) )  {
 				$themes['all'][$key]['enabled'] = true;
 				$themes['enabled'][$key] = $themes['all'][$key];
 			}
