Index: wp-admin/includes/image-edit.php
===================================================================
--- wp-admin/includes/image-edit.php	(revision 21403)
+++ wp-admin/includes/image-edit.php	(working copy)
@@ -576,6 +576,7 @@
 	}
 
 	if ( isset($sizes) ) {
+		global $_wp_additional_image_sizes;
 		foreach ( $sizes as $size ) {
 			$tag = false;
 			if ( isset($meta['sizes'][$size]) ) {
@@ -590,8 +591,16 @@
 					$backup_sizes[$tag] = $meta['sizes'][$size];
 			}
 
-			$crop = $nocrop ? false : get_option("{$size}_crop");
-			$resized = image_make_intermediate_size($new_path, get_option("{$size}_size_w"), get_option("{$size}_size_h"), $crop );
+			if ( isset( $_wp_additional_image_sizes[$size] ) ) {
+				$width = intval( $_wp_additional_image_sizes[$size]['width'] );
+				$height = intval( $_wp_additional_image_sizes[$size]['height'] );
+				$crop = intval( $_wp_additional_image_sizes[$size]['crop'] );
+			} else {
+				$width = get_option( "{$size}_size_w" );
+				$height = get_option( "{$size}_size_h" );
+				$crop = $nocrop ? false : get_option( "{$size}_crop" );
+			}
+			$resized = image_make_intermediate_size( $new_path, $width, $height, $crop );
 
 			if ( $resized )
 				$meta['sizes'][$size] = $resized;
