Index: rules.events.inc
===================================================================
--- rules.events.inc	(revision 2214)
+++ rules.events.inc	(working copy)
@@ -37,13 +37,13 @@
     rules_invoke_event('user_update', array('account' => &$account, 'account_unchanged' => $account_unchanged));
   }
   else if (in_array($op, array('insert', 'login', 'logout', 'view', 'delete'))) {
-    rules_invoke_event('user_'. $op, array('account' => &$account));
-
     // Allow adding user roles during registration
-    if ($op == 'insert' && isset($account->roles)) {
+    if ($op == 'insert' && isset($account->roles)) { 
       $edit += array('roles' => array());
       $edit['roles'] += $account->roles;
+      $account->roles += $edit['roles'];
     }
+    rules_invoke_event('user_'. $op, array('account' => &$account));   
   }
 }
 
