Index: wp-includes/post.php
===================================================================
--- wp-includes/post.php	(revision 21177)
+++ wp-includes/post.php	(working copy)
@@ -2821,6 +2821,12 @@
  * Computes a unique slug for the post, when given the desired slug and some post details.
  *
  * @since 2.8.0
+ * @uses $wpdb
+ * @uses $wp_rewrite
+ * @uses apply_filters() Calls 'pre_wp_unique_post_slug' with empty string and
+ *  all function arguments
+ * @uses apply_filters() Calls 'wp_unique_post_slug' with resultant unique slug,
+ *  all function arguments, and the original slug
  *
  * @global wpdb $wpdb
  * @global WP_Rewrite $wp_rewrite
@@ -2835,6 +2841,10 @@
 	if ( in_array( $post_status, array( 'draft', 'pending', 'auto-draft' ) ) )
 		return $slug;
 
+	$override_slug = apply_filters( 'pre_wp_unique_post_slug', '', $slug, $post_ID, $post_status, $post_type, $post_parent );
+	if ( $override_slug )
+		return $override_slug;
+
 	global $wpdb, $wp_rewrite;
 
 	$original_slug = $slug;
