diff -up sharedemail-5321afb/sharedemail.module sharedemail/sharedemail.module
--- sharedemail-5321afb/sharedemail.module	2011-02-24 20:09:17.000000000 -0600
+++ sharedemail/sharedemail.module	2011-07-22 15:44:05.000000000 -0500
@@ -92,15 +92,6 @@ function sharedemail_user($type, &$edit,
         }
       }
       break;
-    case 'submit':
-    case 'update':
-      if (strpos($mail, 'sharedemail_') == 0 && isset($edit['mail'])) {
-        $edit['mail'] = str_replace('sharedemail_', '', $mail);
-        if (module_exists('logintoboggan')) {
-          $edit['conf_mail'] = str_replace('sharedemail_', '', $mail);
-        }
-      }
-      break;
 
     // Creating a new user, this hook is called after db insert
     case 'insert':
@@ -110,6 +101,16 @@ function sharedemail_user($type, &$edit,
         db_query("UPDATE {users} SET mail = '%s' WHERE uid = '%d'", $realmail, $user->uid);
         $user->mail = $realmail;
       }
+      // Fallthrough in order to set $edit fields back.
+
+    case 'submit':
+    case 'update':
+      if (strpos($mail, 'sharedemail_') == 0 && isset($edit['mail'])) {
+        $edit['mail'] = str_replace('sharedemail_', '', $mail);
+        if (module_exists('logintoboggan')) {
+          $edit['conf_mail'] = str_replace('sharedemail_', '', $mail);
+        }
+      }
       break;
   }
 }
Common subdirectories: sharedemail-5321afb/tests and sharedemail/tests
