diff options
author | Godin <mandrikov@gmail.com> | 2010-12-17 09:04:09 +0000 |
---|---|---|
committer | Godin <mandrikov@gmail.com> | 2010-12-17 09:04:09 +0000 |
commit | e58aaf76c2ed38afe902877c764ef4bbc2f43de6 (patch) | |
tree | e0fb3a347383cec930eb5768bcff143f201e4ffd /sonar-plugin-api | |
parent | e667b00eee25a28e8def39ae411433cd9b2c6704 (diff) | |
download | sonarqube-e58aaf76c2ed38afe902877c764ef4bbc2f43de6.tar.gz sonarqube-e58aaf76c2ed38afe902877c764ef4bbc2f43de6.zip |
Fix bug in ActiveRule.clone()
Diffstat (limited to 'sonar-plugin-api')
-rw-r--r-- | sonar-plugin-api/src/main/java/org/sonar/api/rules/ActiveRule.java | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/rules/ActiveRule.java b/sonar-plugin-api/src/main/java/org/sonar/api/rules/ActiveRule.java index a53c3f01c79..9b0cd956551 100644 --- a/sonar-plugin-api/src/main/java/org/sonar/api/rules/ActiveRule.java +++ b/sonar-plugin-api/src/main/java/org/sonar/api/rules/ActiveRule.java @@ -260,12 +260,14 @@ public class ActiveRule implements Cloneable { @Override public Object clone() { - ActiveRule clone = new ActiveRule(getRulesProfile(), getRule(), getSeverity()); + final ActiveRule clone = new ActiveRule(getRulesProfile(), getRule(), getSeverity()); clone.setInherited(isInherited()); if (CollectionUtils.isNotEmpty(getActiveRuleParams())) { clone.setActiveRuleParams(new ArrayList<ActiveRuleParam>(CollectionUtils.collect(getActiveRuleParams(), new Transformer() { public Object transform(Object input) { - return ((ActiveRuleParam) input).clone(); + ActiveRuleParam activeRuleParamClone = (ActiveRuleParam) ((ActiveRuleParam) input).clone(); + activeRuleParamClone.setActiveRule(clone); + return activeRuleParamClone; } }))); } |