Index: src/wp-includes/media.php
===================================================================
--- src/wp-includes/media.php	(revision 32501)
+++ src/wp-includes/media.php	(working copy)
@@ -688,23 +688,24 @@
  * @return bool|array Returns an array (url, width, height), or false, if no image is available.
  */
 function wp_get_attachment_image_src( $attachment_id, $size = 'thumbnail', $icon = false ) {
-
+	$image = false;
 	// get a thumbnail or intermediate image if there is one
-	if ( $image = image_downsize($attachment_id, $size) )
-		return $image;
+	$image = image_downsize($attachment_id, $size);
+	if(!$image) {
+		$src = false;
 
-	$src = false;
+		if ( $icon && $src = wp_mime_type_icon($attachment_id) ) {
+			/** This filter is documented in wp-includes/post.php */
+			$icon_dir = apply_filters( 'icon_dir', ABSPATH . WPINC . '/images/media' );
 
-	if ( $icon && $src = wp_mime_type_icon($attachment_id) ) {
-		/** This filter is documented in wp-includes/post.php */
-		$icon_dir = apply_filters( 'icon_dir', ABSPATH . WPINC . '/images/media' );
-
-		$src_file = $icon_dir . '/' . wp_basename($src);
-		@list($width, $height) = getimagesize($src_file);
+			$src_file = $icon_dir . '/' . wp_basename($src);
+			@list($width, $height) = getimagesize($src_file);
+		}
+		if ( $src && $width && $height )
+			$image = array( $src, $width, $height );
+		}
 	}
-	if ( $src && $width && $height )
-		return array( $src, $width, $height );
-	return false;
+	return apply_filters('wp_get_attachment_image_src_fallback', $image, array($attachment_id, $size, $icon));
 }
 
 /**
