Index: src/wp-includes/user.php
===================================================================
--- src/wp-includes/user.php	(revision 47449)
+++ src/wp-includes/user.php	(working copy)
@@ -1617,8 +1617,10 @@
 	 */
 	$user_nicename = apply_filters( 'pre_user_nicename', $user_nicename );
 
-	$user_nicename_check = $wpdb->get_var( $wpdb->prepare( "SELECT ID FROM $wpdb->users WHERE user_nicename = %s AND user_login != %s LIMIT 1", $user_nicename, $user_login ) );
+	$user_id = ! empty( $ID ) ? (int) $ID : 0;
 
+	$user_nicename_check = $wpdb->get_var( $wpdb->prepare( "SELECT ID FROM $wpdb->users WHERE user_nicename = %s AND ID != %d LIMIT 1", $user_nicename, $user_id ) );
+
 	if ( $user_nicename_check ) {
 		$suffix = 2;
 		while ( $user_nicename_check ) {
@@ -1625,7 +1627,7 @@
 			// user_nicename allows 50 chars. Subtract one for a hyphen, plus the length of the suffix.
 			$base_length         = 49 - mb_strlen( $suffix );
 			$alt_user_nicename   = mb_substr( $user_nicename, 0, $base_length ) . "-$suffix";
-			$user_nicename_check = $wpdb->get_var( $wpdb->prepare( "SELECT ID FROM $wpdb->users WHERE user_nicename = %s AND user_login != %s LIMIT 1", $alt_user_nicename, $user_login ) );
+			$user_nicename_check = $wpdb->get_var( $wpdb->prepare( "SELECT ID FROM $wpdb->users WHERE user_nicename = %s AND ID != %d LIMIT 1", $alt_user_nicename, $user_id ) );
 			$suffix++;
 		}
 		$user_nicename = $alt_user_nicename;
