diff -Naur ../user_import_old/supported/user.inc ./supported/user.inc
--- ../user_import_orig/supported/user.inc	2009-03-21 15:32:42.000000000 -0700
+++ ./supported/user.inc	2009-08-04 19:17:58.531262934 -0700
@@ -68,7 +68,6 @@
   $account_add['mail'] = $fields['user']['email'][0];
 
   if (!empty($account['uid'])) {     
-  
     // update roles
     switch ($update_setting_per_module['roles']) {
       case UPDATE_ADD:
@@ -79,17 +78,18 @@
       
       case UPDATE_REPLACE:
         // update roles
-        $account_add['roles'] = array();
+        if (!isset($account_add['roles'])) {
+          $account_add['roles'] = array();
+        }
 
         foreach ($settings['roles'] as $rid => $role_set) {
           if (!empty($role_set)) {
-						$account_add['roles'][$rid] = $rid;	
-					} 
+            $account_add['roles'][$rid] = $rid;	
+          } 
         }
-
         break;
     }
-    
+
     // update password
     if ($update_setting_per_module['password'] == UPDATE_REPLACE) {
       $account_add['pass'] = (empty($fields['user']['password'][0])) ? user_password() : $fields['user']['password'][0];
