Index: wp-includes/bookmark-template.php
===================================================================
--- wp-includes/bookmark-template.php	(revision 19633)
+++ wp-includes/bookmark-template.php	(working copy)
@@ -100,11 +100,32 @@
 
 		$output .= $link_before;
 
-		if ( $bookmark->link_image != null && $show_images ) {
-			if ( strpos($bookmark->link_image, 'http') === 0 )
-				$output .= "<img src=\"$bookmark->link_image\" $alt $title />";
-			else // If it's a relative path
-				$output .= "<img src=\"" . get_option('siteurl') . "$bookmark->link_image\" $alt $title />";
+		if ( $bookmark->link_image != null && $show_images ) {			
+			if ( strpos($bookmark->link_image, 'http') === 0 ) {
+				$size = @getimagesize( $bookmark->link_image );
+				
+				if( !$size )
+					return new WP_Error( 'invalid_image', __('Could not read image size'), $bookmark->link_image );
+					
+				list( $width, $height, $image_type, $size_string ) = $size;
+				
+				if ( '' != $size_string ) 
+					$size_attrib = $size_string;
+				
+				$output .= "<img src=\"$bookmark->link_image\" $size_attrib $alt $title />";
+			} else { // If it's a relative path
+				$size = @getimagesize( get_option('siteurl') . $bookmark->link_image );
+				
+				if( !$size )
+					return new WP_Error( 'invalid_image', __('Could not read image size'), get_option('siteurl') . $bookmark->link_image );
+					
+				list( $width, $height, $image_type, $size_string ) = $size;
+				
+				if ( '' != $size_string ) 
+					$size_attrib = $size_string;
+				
+				$output .= "<img src=\"" . get_option('siteurl') . "$bookmark->link_image\" $size_attrib $alt $title />";
+			}
 
 			if ( $show_name )
 				$output .= " $name";
