Index: wp-includes/media.php
===================================================================
--- wp-includes/media.php	(revision 19118)
+++ wp-includes/media.php	(working copy)
@@ -375,10 +375,6 @@
 		list( $new_w, $new_h ) = wp_constrain_dimensions( $orig_w, $orig_h, $dest_w, $dest_h );
 	}
 
-	// if the resulting image would be the same size or larger we don't want to resize it
-	if ( $new_w >= $orig_w && $new_h >= $orig_h )
-		return false;
-
 	// the return array matches the parameters to imagecopyresampled()
 	// int dst_x, int dst_y, int src_x, int src_y, int dst_w, int dst_h, int src_w, int src_h
 	return array( 0, 0, (int) $s_x, (int) $s_y, (int) $new_w, (int) $new_h, (int) $crop_w, (int) $crop_h );
@@ -423,6 +419,10 @@
 		return new WP_Error( 'error_getting_dimensions', __('Could not calculate resized image dimensions') );
 	list($dst_x, $dst_y, $src_x, $src_y, $dst_w, $dst_h, $src_w, $src_h) = $dims;
 
+    // if the resulting image would be the same size or larger we don't want to resize it
+	if ( $dst_w >= $orig_w && $dst_h >= $orig_h )
+		return $file;
+
 	$newimage = wp_imagecreatetruecolor( $dst_w, $dst_h );
 
 	imagecopyresampled( $newimage, $image, $dst_x, $dst_y, $src_x, $src_y, $dst_w, $dst_h, $src_w, $src_h);
