[JGIT PATCH] FindBugs: Superclass uses subclass during initialization
From: Sohn, Matthias <hidden>
Date: 2016-06-15 22:46:47
Subsystem:
the rest · Maintainer:
Linus Torvalds
From: Matthias Sohn <redacted> FindBugs reported the following problem with high priority: /usr/src/egit/org.spearce.jgit/src/org/spearce/jgit/merge/MergeStrategy.java:58 Initialization of org.spearce.jgit.merge.MergeStrategy accesses class org.spearce.jgit.merge.StrategySimpleTwoWayInCore, which isn't initialized yet. To fix this problem move instantiation from StrategySimpleTwoWayInCore up to the abstract superclass MergeStrategy. Signed-off-by: Matthias Sohn <redacted> --- .../src/org/spearce/jgit/merge/MergeStrategy.java | 2 +- .../jgit/merge/StrategySimpleTwoWayInCore.java | 2 -- 2 files changed, 1 insertions(+), 3 deletions(-)
diff --git a/org.spearce.jgit/src/org/spearce/jgit/merge/MergeStrategy.java b/org.spearce.jgit/src/org/spearce/jgit/merge/MergeStrategy.java
index 5439e5c..f5ced72 100644
--- a/org.spearce.jgit/src/org/spearce/jgit/merge/MergeStrategy.java
+++ b/org.spearce.jgit/src/org/spearce/jgit/merge/MergeStrategy.java@@ -55,7 +55,7 @@ public static final MergeStrategy THEIRS = new StrategyOneSided("theirs", 1); /** Simple strategy to merge paths, without simultaneous edits. */ - public static final ThreeWayMergeStrategy SIMPLE_TWO_WAY_IN_CORE = StrategySimpleTwoWayInCore.INSTANCE; + public static final ThreeWayMergeStrategy SIMPLE_TWO_WAY_IN_CORE = new StrategySimpleTwoWayInCore(); private static final HashMap<String, MergeStrategy> STRATEGIES = new HashMap<String, MergeStrategy>();
diff --git a/org.spearce.jgit/src/org/spearce/jgit/merge/StrategySimpleTwoWayInCore.java b/org.spearce.jgit/src/org/spearce/jgit/merge/StrategySimpleTwoWayInCore.java
index 5d4447c..626fe06 100644
--- a/org.spearce.jgit/src/org/spearce/jgit/merge/StrategySimpleTwoWayInCore.java
+++ b/org.spearce.jgit/src/org/spearce/jgit/merge/StrategySimpleTwoWayInCore.java@@ -61,8 +61,6 @@ * file contents. */ public class StrategySimpleTwoWayInCore extends ThreeWayMergeStrategy { - static final ThreeWayMergeStrategy INSTANCE = new StrategySimpleTwoWayInCore(); - /** Create a new instance of the strategy. */ protected StrategySimpleTwoWayInCore() { //
--
1.6.3.1.30.g55524