--- taxonomy.php.ori	2010-06-19 13:15:57.046875000 +0200
+++ taxonomy.php	2010-07-03 14:09:18.828125000 +0200
@@ -908,14 +908,14 @@
 		$interms = wp_parse_id_list($include);
 		foreach ( $interms as $interm ) {
 			if ( empty($inclusions) )
-				$inclusions = ' AND ( t.term_id = ' . intval($interm) . ' ';
+				$inclusions = ' AND t.term_id IN ( ' . intval($interm);
 			else
-				$inclusions .= ' OR t.term_id = ' . intval($interm) . ' ';
+				$inclusions .= ', ' . intval($interm);
 		}
 	}
 
 	if ( !empty($inclusions) )
-		$inclusions .= ')';
+		$inclusions .= ' )';
 	$where .= $inclusions;
 
 	$exclusions = '';
@@ -926,9 +926,9 @@
 			$excluded_children[] = $extrunk;
 			foreach( $excluded_children as $exterm ) {
 				if ( empty($exclusions) )
-					$exclusions = ' AND ( t.term_id <> ' . intval($exterm) . ' ';
+					$exclusions = ' AND t.term_id NOT IN ( ' . intval($exterm);
 				else
-					$exclusions .= ' AND t.term_id <> ' . intval($exterm) . ' ';
+					$exclusions .= ', ' . intval($exterm);
 			}
 		}
 	}
@@ -937,14 +937,14 @@
 		$exterms = wp_parse_id_list($exclude);
 		foreach ( $exterms as $exterm ) {
 			if ( empty($exclusions) )
-				$exclusions = ' AND ( t.term_id <> ' . intval($exterm) . ' ';
+				$exclusions = ' AND t.term_id NOT IN ( ' . intval($exterm);
 			else
-				$exclusions .= ' AND t.term_id <> ' . intval($exterm) . ' ';
+				$exclusions .= ', ' . intval($exterm);
 		}
 	}
 
 	if ( !empty($exclusions) )
-		$exclusions .= ')';
+		$exclusions .= ' )';
 	$exclusions = apply_filters('list_terms_exclusions', $exclusions, $args );
 	$where .= $exclusions;
 
