--- sites/all/modules/autoassignrole/autoassignrole.module	2007-09-05 15:25:33.000000000 -0500
+++ sites/all/modules/autoassignrole/autoassignroleNew.module	2007-09-05 15:25:40.000000000 -0500
@@ -50,9 +50,10 @@ function autoassignrole_perm() {
 function autoassignrole_user($type, &$edit, &$user, $category = NULL) {
   switch ($type) {
     case 'insert':
+    case 'update':
       $sql = "SELECT r.rid FROM {role} r WHERE r.name = '%s'";
       $role = db_fetch_object(db_query($sql,variable_get('AUTOASSIGNROLE_ROLE','')));
-      db_query('INSERT INTO {users_roles} (uid, rid) values (%d, %d)', $user->uid, $role->rid );
+      db_query('INSERT INTO {users_roles} (uid, rid) values (%d, %d) ON DUPLICATE KEY UPDATE rid = %d', $user->uid, $role->rid, $role->rid );
       break;
   }
 }
\ No newline at end of file
