Index: wp-includes/link-template.php
===================================================================
--- wp-includes/link-template.php	(revision 21880)
+++ wp-includes/link-template.php	(working copy)
@@ -1166,23 +1166,23 @@
 	$where = apply_filters( "get_{$adjacent}_post_where", $wpdb->prepare("WHERE p.post_date $op %s AND p.post_type = %s AND p.post_status = 'publish' $posts_in_ex_cats_sql", $current_post_date, $post->post_type), $in_same_cat, $excluded_categories );
 	$sort  = apply_filters( "get_{$adjacent}_post_sort", "ORDER BY p.post_date $order LIMIT 1" );
 
-	$query = "SELECT p.* FROM $wpdb->posts AS p $join $where $sort";
+	$query = "SELECT p.id FROM $wpdb->posts AS p $join $where $sort";
 	$query_key = 'adjacent_post_' . md5($query);
 	$result = wp_cache_get($query_key, 'counts');
 	if ( false !== $result ) {
-		if ( is_object( $result ) )
-			$result = new WP_Post( $result );
+		if ( $result )
+			$result = get_post( $result );
 		return $result;
 	}
 
-	$result = $wpdb->get_row("SELECT p.* FROM $wpdb->posts AS p $join $where $sort");
+	$result = $wpdb->get_var( $query );
 	if ( null === $result )
 		$result = '';
 
 	wp_cache_set($query_key, $result, 'counts');
 
-	if ( is_object( $result ) )
-		$result = new WP_Post( $result );
+	if ( $result )
+		$result = get_post( $result );
 
 	return $result;
 }
@@ -2057,7 +2057,7 @@
 	else
 		$url = WP_PLUGIN_URL;
 
-	
+
 	$url = set_url_scheme( $url );
 
 	if ( !empty($plugin) && is_string($plugin) ) {
