Index: wp-includes/media.php
===================================================================
--- wp-includes/media.php	(revision 13140)
+++ wp-includes/media.php	(working copy)
@@ -484,6 +484,13 @@
 			foreach ( $areas as $_size ) {
 				$data = $imagedata['sizes'][$_size];
 				if ( $data['width'] >= $size[0] || $data['height'] >= $size[1] ) {
+					// Skip images with unexpectedly divergent aspect ratios (crops)
+					// First, we calculate what size the original image would be if constrained to a box the size of the current image in the loop
+					$maybe_cropped = image_resize_dimensions($imagedata['width'], $imagedata['height'], $data['width'], $data['height'], false );
+					// If the size doesn't match exactly, then it is of a different aspect ratio, so we skip it, unless it's the thumbnail size
+					if ( 'thumbnail' != $_size && ( !$maybe_cropped || $maybe_cropped[0] != $data['width'] || $maybe_cropped[1] != $data['height'] ) )
+						continue;
+					// If we're still here, then we're going to use this size
 					$file = $data['file'];
 					list($width, $height) = image_constrain_size_for_editor( $data['width'], $data['height'], $size );
 					return compact( 'file', 'width', 'height' );
