Index: wp-admin/includes/media.php
===================================================================
--- wp-admin/includes/media.php	(revision 18772)
+++ wp-admin/includes/media.php	(working copy)
@@ -400,13 +400,15 @@
 	return "<a href='" . esc_url( get_upload_iframe_src($type) ) . "' id='{$id}-add_{$type}' class='thickbox add_$type' title='$title'><img src='" . esc_url( admin_url( $icon ) ) . "' alt='$title' onclick='return false;' /></a>";
 }
 
-function get_upload_iframe_src($type) {
+function get_upload_iframe_src($type, $close_on_save = false) {
 	global $post_ID, $temp_ID;
 	$uploading_iframe_ID = (int) (0 == $post_ID ? $temp_ID : $post_ID);
 	$upload_iframe_src = add_query_arg( 'post_id', $uploading_iframe_ID, admin_url('media-upload.php') );
 
 	if ( 'media' != $type )
 		$upload_iframe_src = add_query_arg('type', $type, $upload_iframe_src);
+	if ( $close_on_save )
+		$upload_iframe_src = add_query_arg('close-on-save', true, $upload_iframe_src);
 	$upload_iframe_src = apply_filters($type . '_upload_iframe_src', $upload_iframe_src);
 
 	return add_query_arg('TB_iframe', true, $upload_iframe_src);
Index: wp-admin/includes/post.php
===================================================================
--- wp-admin/includes/post.php	(revision 18772)
+++ wp-admin/includes/post.php	(working copy)
@@ -1186,7 +1186,7 @@
  */
 function _wp_post_thumbnail_html( $thumbnail_id = NULL ) {
 	global $content_width, $_wp_additional_image_sizes, $post_ID;
-	$set_thumbnail_link = '<p class="hide-if-no-js"><a title="' . esc_attr__( 'Set featured image' ) . '" href="' . esc_url( get_upload_iframe_src('image') ) . '" id="set-post-thumbnail" class="thickbox">%s</a></p>';
+	$set_thumbnail_link = '<p class="hide-if-no-js"><a title="' . esc_attr__( 'Set featured image' ) . '" href="' . esc_url( get_upload_iframe_src('image', true) ) . '" id="set-post-thumbnail" class="thickbox">%s</a></p>';
 	$content = sprintf($set_thumbnail_link, esc_html__( 'Set featured image' ));
 
 	if ( $thumbnail_id && get_post( $thumbnail_id ) ) {
Index: wp-admin/js/set-post-thumbnail.dev.js
===================================================================
--- wp-admin/js/set-post-thumbnail.dev.js	(revision 18772)
+++ wp-admin/js/set-post-thumbnail.dev.js	(working copy)
@@ -15,6 +15,8 @@
 			$link.fadeOut( 2000 );
 			win.WPSetThumbnailID(id);
 			win.WPSetThumbnailHTML(str);
+			if ( window.location.href.indexOf('close-on-save') != -1 )
+				win.tb_remove();
 		}
 	}
 	);
