Index: /Users/denis/Sites/sem-pro/wp-includes/registration.php
===================================================================
--- /Users/denis/Sites/sem-pro/wp-includes/registration.php	(revision 1218)
+++ /Users/denis/Sites/sem-pro/wp-includes/registration.php	(working copy)
@@ -176,14 +176,14 @@
 	if ( empty($user_registered) )
 		$user_registered = gmdate('Y-m-d H:i:s');
 
-	$data = compact( 'user_pass', 'user_email', 'user_url', 'user_nicename', 'display_name', 'user_registered' );
+	$data = compact( 'user_login', 'user_pass', 'user_email', 'user_url', 'user_nicename', 'display_name', 'user_registered' );
 	$data = stripslashes_deep( $data );
 
 	if ( $update ) {
 		$wpdb->update( $wpdb->users, $data, compact( 'ID' ) );
 		$user_id = (int) $ID;
 	} else {
-		$wpdb->insert( $wpdb->users, $data + compact( 'user_login' ) );
+		$wpdb->insert( $wpdb->users, $data );
 		$user_id = (int) $wpdb->insert_id;
 	}
 
Index: /Users/denis/Sites/sem-pro/wp-admin/includes/user.php
===================================================================
--- /Users/denis/Sites/sem-pro/wp-admin/includes/user.php	(revision 1218)
+++ /Users/denis/Sites/sem-pro/wp-admin/includes/user.php	(working copy)
@@ -175,7 +175,11 @@
 
 	if ( $errors->get_error_codes() )
 		return $errors;
-
+	
+	if ( $update && $userdata->user_email == $userdata->user_login ) {
+		$user->user_login = $user->user_email;
+	}
+	
 	if ( $update ) {
 		$user_id = wp_update_user( get_object_vars( $user ));
 	} else {
