Hello,
I have found a bug: when changing the admin e-mail, a mail is sent to the new address with a hash code to confirm the change. But after following the link, the old e-mail address is stil there...
I have debuged the code and found out that the new e-mail address should be saved in the options with the hash code to check the confirmation. The issue is that the new e-mail is never saved in options...
to fix that, edit wp-admin/admin-functions.php
and add update_option('new_admin_email',$newadminemail);
in the function update_option_new_admin_email like below:
function update_option_new_admin_email($old_value, $value) {
if ( $value == get_option( 'admin_email' ) || !is_email( $value ) )
return;
$hash = md5( $value.time().mt_rand() );
$newadminemail = array(
"hash" => $hash,
"newemail" => $value
);
update_option('new_admin_email',$newadminemail);