John Crygier
2012-04-10 f3b625d298bab922c64192c25914e352bd87e59e
src/com/gitblit/GitblitUserService.java
@@ -156,9 +156,12 @@
   public boolean updateUserModel(String username, UserModel model) {
      if (supportsCredentialChanges()) {
         if (!supportsTeamMembershipChanges()) {
            //  teams are externally controlled
            //  teams are externally controlled - copy from original model
            UserModel existingModel = getUserModel(username);
            model = DeepCopier.copy(model);
            model.teams.clear();
            model.teams.addAll(existingModel.teams);
         }
         return serviceImpl.updateUserModel(username, model);
      }
@@ -166,9 +169,12 @@
         // passwords are not persisted by the backing user service
         model.password = null;
         if (!supportsTeamMembershipChanges()) {
            //  teams are externally controlled
            //  teams are externally controlled- copy from original model
            UserModel existingModel = getUserModel(username);
            model = DeepCopier.copy(model);
            model.teams.clear();
            model.teams.addAll(existingModel.teams);
         }
         return serviceImpl.updateUserModel(username, model);
      }
@@ -228,9 +234,12 @@
   @Override
   public boolean updateTeamModel(String teamname, TeamModel model) {
      if (!supportsTeamMembershipChanges()) {
         // teams are externally controlled
         // teams are externally controlled - copy from original model
         TeamModel existingModel = getTeamModel(teamname);
         model = DeepCopier.copy(model);
         model.users.clear();
         model.users.addAll(existingModel.users);
      }
      return serviceImpl.updateTeamModel(teamname, model);
   }