Index: wp-includes/canonical.php
===================================================================
--- wp-includes/canonical.php	(revision 17497)
+++ wp-includes/canonical.php	(working copy)
@@ -78,6 +78,19 @@
 				$redirect['query'] = remove_query_arg(array('p', 'page_id', 'attachment_id', 'post_type'), $redirect['query']);
 		}
 	}
+	   
+	if( is_category() && ! $wp_rewrite->wp_rewrite() ) {
+		if( isset( $_GET['category_name'] ) ) {
+			$categories = explode( ',', $_GET['category_name'] );
+			$categories = "'" . implode( "','", array_map( 'sanitize_title_for_query', $categories ) ) . "'";
+			$category_ids = $wpdb->get_col( "SELECT term_id FROM $wpdb->term_taxonomy INNER JOIN $wpdb->terms USING(term_id) WHERE taxonomy='category' AND slug IN($categories)" );
+			if( $category_ids ) {
+				$redirect_url = home_url( '/' );
+				$redirect_url = add_query_arg( array( 'cat' => implode( ',', $category_ids ) ), $redirect_url );
+				$redirect['query'] = remove_query_arg( array( 'cat', 'category_name', 'category' ), $redirect['query'] );
+			}
+		}
+	}
 
 	// These tests give us a WP-generated permalink
 	if ( is_404() ) {
