Index: wp-includes/query.php
===================================================================
--- wp-includes/query.php	(revision 21273)
+++ wp-includes/query.php	(working copy)
@@ -2201,7 +2201,9 @@
 		}
 
 		// Allow plugins to contextually add/remove/modify the search section of the database query
-		$search = apply_filters_ref_array('posts_search', array( $search, &$this ) );
+		if ( !$q['suppress_filters'] )
+			$search = apply_filters_ref_array('posts_search', array( $search, &$this ) );
+		
 
 		// Taxonomies
 		if ( !$this->is_singular ) {
@@ -2609,9 +2611,8 @@
 
 		$this->request = $old_request = "SELECT $found_rows $distinct $fields FROM $wpdb->posts $join WHERE 1=1 $where $groupby $orderby $limits";
 
-		if ( !$q['suppress_filters'] ) {
+		if ( !$q['suppress_filters'] )
 			$this->request = apply_filters_ref_array( 'posts_request', array( $this->request, &$this ) );
-		}
 
 		if ( 'ids' == $q['fields'] ) {
 			$this->posts = $wpdb->get_col($this->request);
@@ -2630,14 +2631,17 @@
 		}
 
 		$split_the_query = ( $old_request == $this->request && "$wpdb->posts.*" == $fields && !empty( $limits ) && $q['posts_per_page'] < 500 );
-		$split_the_query = apply_filters( 'split_the_query', $split_the_query, $this );
+		if ( !$q['suppress_filters'] )
+			$split_the_query = apply_filters( 'split_the_query', $split_the_query, $this );
+		
 
 		if ( $split_the_query ) {
 			// First get the IDs and then fill in the objects
 
 			$this->request = "SELECT $found_rows $distinct $wpdb->posts.ID FROM $wpdb->posts $join WHERE 1=1 $where $groupby $orderby $limits";
 
-			$this->request = apply_filters( 'posts_request_ids', $this->request, $this );
+			if ( !$q['suppress_filters'] )
+				$this->request = apply_filters( 'posts_request_ids', $this->request, $this );
 
 			$ids = $wpdb->get_col( $this->request );
 
@@ -2701,7 +2705,7 @@
 				}
 			}
 
-			if ( $this->is_preview && $this->posts && current_user_can( $edit_cap, $this->posts[0]->ID ) )
+			if ( $this->is_preview && $this->posts && current_user_can( $edit_cap, $this->posts[0]->ID ) && !$q['suppress_filters'] )
 				$this->posts[0] = apply_filters_ref_array('the_preview', array( $this->posts[0], &$this ));
 		}
 
