Index: wp-includes/theme.php
===================================================================
--- wp-includes/theme.php	(revision 22098)
+++ wp-includes/theme.php	(working copy)
@@ -1350,6 +1350,38 @@
 				define( 'BACKGROUND_IMAGE', $args[0]['default-image'] );
 
 			break;
+		case 'post-thumbnails':
+			// A boolean 3rd param may be added to set if the value passed
+			// should stomp the previous setting or be treated as additive (merge).
+			// It defaults to merging the new values with old.
+			$current = get_theme_support( 'post-thumbnails' );
+			if ( $args === true ) {
+				$stomp = true;
+			}
+			else {
+				$_args = func_get_args();
+				if ( count( $_args ) == 3 ) {
+					$stomp = (bool) $_args[2];
+				}
+				else {
+					$stomp = false;
+				}
+			}
+			if ( !$stomp ) {
+				// currently enabled for some post types, merge
+				if ( is_array( $current ) && is_array( $current[0] ) ) {
+					if ( is_string( $args[0] ) ) {
+						$args[0] = array( $args[0] );
+					}
+					$args[0] = array_unique( array_merge( $current[0], $args[0] ) );
+				}
+				// currently enabled for all post types, keep as is
+				else if ( $current ) {
+					$args = true;
+				}
+				// else disabled for all post types, allow stomp below
+			}
+			break;
 	}
 
 	$_wp_theme_features[ $feature ] = $args;
