Index: wp-admin/admin-ajax.php
===================================================================
--- wp-admin/admin-ajax.php	(revision 11148)
+++ wp-admin/admin-ajax.php	(working copy)
@@ -585,7 +585,8 @@
 		$tags[ $key ]->id = $tag->term_id;
 	}
 
-	$return = wp_generate_tag_cloud( $tags );
+        // We need raw tag names here, so don't filter the output
+        $return = wp_generate_tag_cloud( $tags, 'filter=0' );
 
 	if ( empty($return) )
 		die('0');
Index: wp-includes/category-template.php
===================================================================
--- wp-includes/category-template.php	(revision 11148)
+++ wp-includes/category-template.php	(working copy)
@@ -599,6 +599,7 @@
 		'smallest' => 8, 'largest' => 22, 'unit' => 'pt', 'number' => 0,
 		'format' => 'flat', 'orderby' => 'name', 'order' => 'ASC',
 		'topic_count_text_callback' => 'default_topic_count_text',
+               'filter' => 1,
 	);
 
 	if ( !isset( $args['topic_count_text_callback'] ) && isset( $args['single_text'] ) && isset( $args['multiple_text'] ) ) {
@@ -680,7 +681,11 @@
 		break;
 	endswitch;
 
-	return apply_filters( 'wp_generate_tag_cloud', $return, $tags, $args );
+       if( $filter ) {
+          return apply_filters( 'wp_generate_tag_cloud', $return, $tags, $args );
+       } else {
+          return $return;
+       }
 }
 
 //
Index: wp-includes/post.php
===================================================================
--- wp-includes/post.php	(revision 11148)
+++ wp-includes/post.php	(working copy)
@@ -1535,6 +1535,7 @@
 		wp_set_post_tags( $post_ID, $tags_input );
 	// new-style support for all tag-like taxonomies
 	if ( !empty($tax_input) ) {
+               $tax_input = stripslashes_deep( $tax_input );
 		foreach ( $tax_input as $taxonomy => $tags ) {
 			wp_set_post_terms( $post_ID, $tags, $taxonomy );
 		}

