Make WordPress Core

Ticket #9564: 9564.3.diff

File 9564.3.diff, 2.0 KB (added by Denis-de-Bernardy, 17 years ago)
  • Users/denis/Sites/sem-pro/wp-includes/registration.php

     
    176176        if ( empty($user_registered) )
    177177                $user_registered = gmdate('Y-m-d H:i:s');
    178178
    179         $data = compact( 'user_pass', 'user_email', 'user_url', 'user_nicename', 'display_name', 'user_registered' );
     179        $data = compact( 'user_login', 'user_pass', 'user_email', 'user_url', 'user_nicename', 'display_name', 'user_registered' );
    180180        $data = stripslashes_deep( $data );
    181181
    182182        if ( $update ) {
    183183                $wpdb->update( $wpdb->users, $data, compact( 'ID' ) );
    184184                $user_id = (int) $ID;
    185185        } else {
    186                 $wpdb->insert( $wpdb->users, $data + compact( 'user_login' ) );
     186                $wpdb->insert( $wpdb->users, $data );
    187187                $user_id = (int) $wpdb->insert_id;
    188188        }
    189189
     
    256256
    257257        // Merge old and new fields with new fields overwriting old ones.
    258258        $userdata = array_merge($user, $userdata);
     259       
     260        // Keep trace of current_user using current data
     261        $current_user = wp_get_current_user();
     262       
     263        // Update user
    259264        $user_id = wp_insert_user($userdata);
    260265
    261266        // Update the cookies if the password changed.
    262         $current_user = wp_get_current_user();
    263267        if ( $current_user->id == $ID ) {
    264                 if ( isset($plaintext_pass) ) {
     268                if ( isset($plaintext_pass) || $user['user_login'] != $userdata['user_login'] ) {
    265269                        wp_clear_auth_cookie();
    266270                        wp_set_auth_cookie($ID);
    267271                }
  • Users/denis/Sites/sem-pro/wp-admin/includes/user.php

     
    176176        if ( $errors->get_error_codes() )
    177177                return $errors;
    178178
     179        if ( $update && $userdata->user_email == $userdata->user_login ) {
     180                $user->user_login = $user->user_email;
     181        }
     182
    179183        if ( $update ) {
    180184                $user_id = wp_update_user( get_object_vars( $user ));
    181185        } else {