Avoid refetching a post in get_post() when passed a post object that has already been raw sanitized. Clean up sanitize loop. Props scribu. fixes #18822

git-svn-id: https://develop.svn.wordpress.org/trunk@18846 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Ryan Boren 2011-09-30 19:06:18 +00:00
parent 2678fd4f60
commit c3212d522e
2 changed files with 5 additions and 3 deletions

View File

@ -381,6 +381,8 @@ function &get_post(&$post, $output = OBJECT, $filter = 'raw') {
_get_post_ancestors($post);
$_post = sanitize_post($post, 'raw');
wp_cache_add($post->ID, $_post, 'posts');
} elseif ( is_object($post) && 'raw' == $post->filter ) {
$_post = $post;
} else {
if ( is_object($post) )
$post_id = $post->ID;

View File

@ -2745,9 +2745,9 @@ class WP_Query {
$this->post_count = count($this->posts);
// Sanitize before caching so it'll only get done once
for ( $i = 0; $i < $this->post_count; $i++ ) {
$this->posts[$i] = sanitize_post($this->posts[$i], 'raw');
// Always sanitize
foreach ( $this->posts as $i => $post ) {
$this->posts[$i] = sanitize_post( $post, 'raw' );
}
if ( $q['cache_results'] )