Index: wp-includes/media.php
===================================================================
--- wp-includes/media.php	(revision 30350)
+++ wp-includes/media.php	(working copy)
@@ -306,7 +306,7 @@
 	list( $img_src, $width, $height ) = image_downsize($id, $size);
 	$hwstring = image_hwstring($width, $height);
 
-	$title = $title ? 'title="' . esc_attr( $title ) . '" ' : '';
+	$title = $title ? 'title="' . esc_attr( wptexturize( $title ) ) . '" ' : '';
 
 	$class = 'align' . esc_attr($align) .' size-' . esc_attr($size) . ' wp-image-' . $id;
 
@@ -322,7 +322,7 @@
 	 */
 	$class = apply_filters( 'get_image_tag_class', $class, $id, $align, $size );
 
-	$html = '<img src="' . esc_attr($img_src) . '" alt="' . esc_attr($alt) . '" ' . $title . $hwstring . 'class="' . $class . '" />';
+	$html = '<img src="' . esc_attr($img_src) . '" alt="' . esc_attr( wptexturize( $alt ) ) . '" ' . $title . $hwstring . 'class="' . $class . '" />';
 
 	/**
 	 * Filter the HTML content for the image tag.
@@ -711,6 +711,7 @@
 			$default_attr['alt'] = trim(strip_tags( $attachment->post_excerpt )); // If not, Use the Caption
 		if ( empty($default_attr['alt']) )
 			$default_attr['alt'] = trim(strip_tags( $attachment->post_title )); // Finally, use the title
+		$default_attr['alt'] = wptexturize( $default_attr['alt'] );
 
 		$attr = wp_parse_args($attr, $default_attr);
 
