fb-contrib-commit Mailing List for fb-contrib (Page 75)
Brought to you by:
dbrosius
You can subscribe to this list here.
2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(56) |
Oct
(60) |
Nov
(58) |
Dec
(89) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2006 |
Jan
(66) |
Feb
(55) |
Mar
(85) |
Apr
(115) |
May
(35) |
Jun
(28) |
Jul
(3) |
Aug
(48) |
Sep
(37) |
Oct
(22) |
Nov
(14) |
Dec
(66) |
2007 |
Jan
(45) |
Feb
(63) |
Mar
(10) |
Apr
(1) |
May
(1) |
Jun
(12) |
Jul
|
Aug
|
Sep
(25) |
Oct
(21) |
Nov
(39) |
Dec
|
2008 |
Jan
(7) |
Feb
|
Mar
(26) |
Apr
(5) |
May
(2) |
Jun
(32) |
Jul
(9) |
Aug
(10) |
Sep
|
Oct
(3) |
Nov
(1) |
Dec
|
2009 |
Jan
(10) |
Feb
(31) |
Mar
(32) |
Apr
(35) |
May
(25) |
Jun
|
Jul
(31) |
Aug
(10) |
Sep
(95) |
Oct
(35) |
Nov
(10) |
Dec
(34) |
2010 |
Jan
(90) |
Feb
(4) |
Mar
(7) |
Apr
(20) |
May
(20) |
Jun
(13) |
Jul
(7) |
Aug
(18) |
Sep
(25) |
Oct
(4) |
Nov
(16) |
Dec
(2) |
2011 |
Jan
(1) |
Feb
|
Mar
(11) |
Apr
(3) |
May
(2) |
Jun
(26) |
Jul
(10) |
Aug
(2) |
Sep
|
Oct
(1) |
Nov
(1) |
Dec
(1) |
2012 |
Jan
(3) |
Feb
(4) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
(14) |
Nov
(3) |
Dec
(4) |
2013 |
Jan
(3) |
Feb
(2) |
Mar
(1) |
Apr
(4) |
May
|
Jun
(1) |
Jul
(3) |
Aug
|
Sep
|
Oct
(4) |
Nov
(3) |
Dec
(3) |
2014 |
Jan
(4) |
Feb
(2) |
Mar
(4) |
Apr
(1) |
May
(2) |
Jun
|
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2015 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(4) |
Jun
|
Jul
|
Aug
(3) |
Sep
|
Oct
|
Nov
(3) |
Dec
(3) |
2016 |
Jan
(2) |
Feb
|
Mar
|
Apr
(2) |
May
|
Jun
|
Jul
(1) |
Aug
(2) |
Sep
(4) |
Oct
(2) |
Nov
(7) |
Dec
|
2017 |
Jan
(1) |
Feb
|
Mar
(4) |
Apr
(5) |
May
(2) |
Jun
|
Jul
(2) |
Aug
|
Sep
(4) |
Oct
|
Nov
|
Dec
(3) |
2018 |
Jan
|
Feb
|
Mar
(2) |
Apr
|
May
(5) |
Jun
(2) |
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Dave B. <dbr...@us...> - 2005-10-05 04:48:07
|
Update of /cvsroot/fb-contrib/fb-contrib/lib In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21979/lib Modified Files: bcel.jar Log Message: update for small fixes Index: bcel.jar =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/lib/bcel.jar,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 Binary files /tmp/cvsBveLIa and /tmp/cvsqdMTmn differ |
From: Dave B. <dbr...@us...> - 2005-10-05 03:37:38
|
Update of /cvsroot/fb-contrib/fb-contrib/etc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12084/etc Modified Files: findbugs.xml Log Message: death to fp - *sniff* Index: findbugs.xml =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/etc/findbugs.xml,v retrieving revision 1.20 retrieving revision 1.21 diff -u -d -r1.20 -r1.21 --- findbugs.xml 1 Oct 2005 07:22:44 -0000 1.20 +++ findbugs.xml 5 Oct 2005 03:37:30 -0000 1.21 @@ -45,12 +45,12 @@ speed="fast" reports="CE_CLASS_ENVY" hidden="true" /> - +<!-- <Detector class="com.mebigfatguy.fbcontrib.detect.FinalParameters" speed="fast" reports="FP_FINAL_PARAMETERS" hidden="true" /> - +--> <Detector class="com.mebigfatguy.fbcontrib.detect.LiteralStringComparison" speed="fast" reports="LSC_LITERAL_STRING_COMPARISON" /> |
From: Dave B. <dbr...@us...> - 2005-10-05 03:35:33
|
Update of /cvsroot/fb-contrib/fb-contrib/htdocs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11700/htdocs Modified Files: index.html Log Message: death to fp - *sniff* Index: index.html =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/htdocs/index.html,v retrieving revision 1.13 retrieving revision 1.14 diff -u -d -r1.13 -r1.14 --- index.html 25 Sep 2005 06:11:56 -0000 1.13 +++ index.html 5 Oct 2005 03:35:25 -0000 1.14 @@ -34,9 +34,6 @@ Finds methods that call the equals or compareTo methods on a String variable passing in a String literal. A NullPointerException may occur if the string variable is null. If instead the method was called on the string literal, and the variable was passed as an argument, this exception could never happen</li> - <li><b>Final Parameters</b><br/> - Finds parameters that are not written to, but are not defined as final. Doing so helps - documents the method, and may help the jvm optimize the invocation of this method.</li> </ul> <hr/> Detectors added in v1.0.0<br/> |
From: Dave B. <dbr...@us...> - 2005-10-02 22:15:59
|
Update of /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25068/src/com/mebigfatguy/fbcontrib Modified Files: FBContrib.java Log Message: finalize parameters, and then realized that the FinalParameters detector is fatally flawed, so hide it, for now.... ever? Index: FBContrib.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/FBContrib.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- FBContrib.java 6 Sep 2005 03:05:18 -0000 1.2 +++ FBContrib.java 1 Oct 2005 07:22:44 -0000 1.3 @@ -22,7 +22,7 @@ public class FBContrib { - public static void main(String[] args) { + public static void main(final String[] args) { JOptionPane.showMessageDialog( null, "To use fb-contrib, copy this jar file into your local FindBugs plugin directory, and use FindBugs as usual."); System.exit(0); } |
From: Dave B. <dbr...@us...> - 2005-10-02 22:13:55
|
Update of /cvsroot/fb-contrib/fb-contrib/etc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25068/etc Modified Files: findbugs.xml Log Message: finalize parameters, and then realized that the FinalParameters detector is fatally flawed, so hide it, for now.... ever? Index: findbugs.xml =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/etc/findbugs.xml,v retrieving revision 1.19 retrieving revision 1.20 diff -u -d -r1.19 -r1.20 --- findbugs.xml 25 Sep 2005 06:09:03 -0000 1.19 +++ findbugs.xml 1 Oct 2005 07:22:44 -0000 1.20 @@ -44,11 +44,12 @@ <Detector class="com.mebigfatguy.fbcontrib.detect.ClassEnvy" speed="fast" reports="CE_CLASS_ENVY" - hidden="true"/> + hidden="true" /> <Detector class="com.mebigfatguy.fbcontrib.detect.FinalParameters" speed="fast" - reports="FP_FINAL_PARAMETERS" /> + reports="FP_FINAL_PARAMETERS" + hidden="true" /> <Detector class="com.mebigfatguy.fbcontrib.detect.LiteralStringComparison" speed="fast" |
Update of /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25068/src/com/mebigfatguy/fbcontrib/detect Modified Files: ClassEnvy.java CyclomaticComplexity.java DeclaredRuntimeException.java DubiousListCollection.java FinalParameters.java InefficientStringBuffering.java ListIndexedIterating.java LiteralStringComparison.java OverlyConcreteParameter.java ParallelLists.java PartiallyConstructedObjectAccess.java SyncCollectionIterators.java UnrelatedCollectionContents.java Log Message: finalize parameters, and then realized that the FinalParameters detector is fatally flawed, so hide it, for now.... ever? Index: DeclaredRuntimeException.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DeclaredRuntimeException.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- DeclaredRuntimeException.java 20 Sep 2005 01:49:58 -0000 1.3 +++ DeclaredRuntimeException.java 1 Oct 2005 07:22:44 -0000 1.4 @@ -49,7 +49,7 @@ } } - public DeclaredRuntimeException(BugReporter bugReporter) { + public DeclaredRuntimeException(final BugReporter bugReporter) { this.bugReporter = bugReporter; } @@ -57,12 +57,12 @@ return super.clone(); } - public void visitClassContext(ClassContext classContext) { + public void visitClassContext(final ClassContext classContext) { if (runtimeExceptionClass != null) classContext.getJavaClass().accept(this); } - public void visitMethod(Method obj) { + public void visitMethod(final Method obj) { ExceptionTable et = obj.getExceptionTable(); if (et != null) { String[] exNames = et.getExceptionNames(); Index: ListIndexedIterating.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ListIndexedIterating.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- ListIndexedIterating.java 10 Sep 2005 04:12:41 -0000 1.1 +++ ListIndexedIterating.java 1 Oct 2005 07:22:44 -0000 1.2 @@ -50,7 +50,7 @@ private int loopReg; private boolean sawListSize; - public ListIndexedIterating(BugReporter bugReporter) { + public ListIndexedIterating(final BugReporter bugReporter) { this.bugReporter = bugReporter; stack = new OpcodeStack(); possibleForLoops = new HashSet<ForLoop>(); @@ -60,7 +60,7 @@ return super.clone(); } - public void visitCode(Code obj) { + public void visitCode(final Code obj) { sawListSize = false; stack.resetForMethodEntry(this); @@ -76,14 +76,14 @@ } } - public void sawOpcode(int seen) { + public void sawOpcode(final int seen) { if (stage == FIND_LOOP_STAGE) sawOpcodeLoop(seen); else sawOpcodeBug(seen); } - private void sawOpcodeLoop(int seen) { + private void sawOpcodeLoop(final int seen) { try { switch (state) { case SEEN_NOTHING: @@ -116,7 +116,7 @@ } } - private void sawOpcodeBug(int seen) { + private void sawOpcodeBug(final int seen) { try { Iterator<ForLoop> it = possibleForLoops.iterator(); while (it.hasNext()) { @@ -182,7 +182,7 @@ } } - private int getReg(int seen, int generalOp, int zeroOp) { + private int getReg(final int seen, final int generalOp, final int zeroOp) { if (seen == generalOp) return getRegisterOperand(); return seen - zeroOp; @@ -196,7 +196,7 @@ private int loopState; private boolean loopRegLoaded; - public ForLoop( int start, int end, int reg) { + public ForLoop( final int start, final int end, final int reg) { loopStart = start; loopEnd = end; loopReg = reg; @@ -216,7 +216,7 @@ return loopReg; } - public void setLoopState(int state) { + public void setLoopState(final int state) { loopState = state; } @@ -224,7 +224,7 @@ return loopState; } - public void setLoopRegLoaded(boolean loaded) { + public void setLoopRegLoaded(final boolean loaded) { loopRegLoaded = loaded; } Index: UnrelatedCollectionContents.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/UnrelatedCollectionContents.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- UnrelatedCollectionContents.java 15 Sep 2005 02:49:52 -0000 1.6 +++ UnrelatedCollectionContents.java 1 Oct 2005 07:22:44 -0000 1.7 @@ -57,7 +57,7 @@ private Map<String, Set<SourceLineAnnotation>>memberSourceLineAnnotations; private Map<Integer, Set<SourceLineAnnotation>>localSourceLineAnnotations; - public UnrelatedCollectionContents(BugReporter bugReporter) { + public UnrelatedCollectionContents(final BugReporter bugReporter) { this.bugReporter = bugReporter; stack = new OpcodeStack(); } @@ -66,13 +66,13 @@ return super.clone(); } - public void visitClassContext(ClassContext classContext) { + public void visitClassContext(final ClassContext classContext) { memberCollections = new HashMap<String, Set<String>>(); memberSourceLineAnnotations = new HashMap<String, Set<SourceLineAnnotation>>(); super.visitClassContext(classContext); } - public void visitCode(Code obj) { + public void visitCode(final Code obj) { localCollections = new HashMap<Integer, Set<String>>(); localScopeEnds = new HashMap<Integer, Set<Integer>>(); localSourceLineAnnotations = new HashMap<Integer, Set<SourceLineAnnotation>>(); @@ -80,7 +80,7 @@ super.visitCode(obj); } - public void sawOpcode(int seen) { + public void sawOpcode(final int seen) { try { Set<Integer> regs = localScopeEnds.remove(getPC()); if (regs != null) { @@ -123,7 +123,7 @@ } } - private void checkAdd(OpcodeStack.Item colItm, OpcodeStack.Item addItm) + private void checkAdd(final OpcodeStack.Item colItm, final OpcodeStack.Item addItm) throws ClassNotFoundException { int reg = colItm.getRegisterNumber(); if (reg != -1) { @@ -172,7 +172,7 @@ } } - private void mergeItem(Set<String> supers, Set<SourceLineAnnotation> sla, OpcodeStack.Item addItm) + private void mergeItem(final Set<String> supers, final Set<SourceLineAnnotation> sla, final OpcodeStack.Item addItm) throws ClassNotFoundException { if (supers.size() == 0) @@ -201,7 +201,7 @@ } } - private void addNewItem(Set<String> supers, OpcodeStack.Item addItm) + private void addNewItem(final Set<String> supers, final OpcodeStack.Item addItm) throws ClassNotFoundException { if (addItm.getSignature().charAt(0) == '[') { @@ -231,7 +231,7 @@ } } - private static void intersection(Set<String> orig, Set<String> add) { + private static void intersection(final Set<String> orig, final Set<String> add) { Iterator<String> it = orig.iterator(); while (it.hasNext()) { if (!add.contains(it.next())) @@ -239,7 +239,7 @@ } } - private Integer getRegisterScopeEnd(int reg) { + private Integer getRegisterScopeEnd(final int reg) { LocalVariableTable lvt = getMethod().getLocalVariableTable(); if (lvt == null) return null; Index: SyncCollectionIterators.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SyncCollectionIterators.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- SyncCollectionIterators.java 6 Sep 2005 03:03:51 -0000 1.2 +++ SyncCollectionIterators.java 1 Oct 2005 07:22:44 -0000 1.3 @@ -57,7 +57,7 @@ private Set<String> memberCollections = new HashSet<String>(); private Set<Integer> localCollections = new HashSet<Integer>(); - public SyncCollectionIterators(BugReporter bugReporter) { + public SyncCollectionIterators(final BugReporter bugReporter) { this.bugReporter = bugReporter; } @@ -65,19 +65,19 @@ return super.clone(); } - public void visitClassContext(ClassContext classContext) { + public void visitClassContext(final ClassContext classContext) { memberCollections.clear(); super.visitClassContext(classContext); } - public void visitCode(Code obj) { + public void visitCode(final Code obj) { if (obj.getCode() != null) { state = SEEN_NOTHING; localCollections.clear(); super.visitCode(obj); } } - public void sawOpcode(int seen) { + public void sawOpcode(final int seen) { switch (state) { case SEEN_NOTHING: if ((seen == INVOKESTATIC) && getClassConstantOperand().equals("java/util/Collections")) { Index: FinalParameters.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/FinalParameters.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- FinalParameters.java 20 Sep 2005 01:49:58 -0000 1.2 +++ FinalParameters.java 1 Oct 2005 07:22:44 -0000 1.3 @@ -41,7 +41,7 @@ private boolean isStatic; private boolean isAbstract; - public FinalParameters(BugReporter bugReporter) { + public FinalParameters(final BugReporter bugReporter) { this.bugReporter = bugReporter; } @@ -49,17 +49,18 @@ return super.clone(); } - public void visitMethod(Method obj) { + public void visitMethod(final Method obj) { isStatic = (obj.getAccessFlags() & Constants.ACC_STATIC) != 0; isAbstract = (obj.getAccessFlags() & Constants.ACC_ABSTRACT) != 0; parmCount = Type.getArgumentTypes(obj.getSignature()).length; + super.visitMethod(obj); } - public void visitCode(Code obj) { + public void visitCode(final Code obj) { if (isAbstract) return; - + changedParms = new HashSet<Integer>(); super.visitCode(obj); for (int i = 0; i < parmCount; i++) { @@ -81,7 +82,7 @@ } } - public void sawOpcode(int seen) { + public void sawOpcode(final int seen) { if ((seen == ASTORE) || ((seen >= ASTORE_0) && (seen <= ASTORE_3))) { int parm = getAStoreParameter(seen); if (parm >= 0) @@ -89,7 +90,7 @@ } } - private String getRegisterName(Code obj, int reg) { + private String getRegisterName(final Code obj, final int reg) { LocalVariableTable lvt = obj.getLocalVariableTable(); if (lvt != null) { LocalVariable lv = lvt.getLocalVariable(reg, 0); @@ -99,7 +100,7 @@ return String.valueOf(reg); } - private int getAStoreParameter(int seen) { + private int getAStoreParameter(final int seen) { int reg; if (seen == ASTORE) reg = getRegisterOperand(); Index: CyclomaticComplexity.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/CyclomaticComplexity.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- CyclomaticComplexity.java 16 Sep 2005 03:20:14 -0000 1.3 +++ CyclomaticComplexity.java 1 Oct 2005 07:22:44 -0000 1.4 @@ -43,7 +43,7 @@ private ClassContext classContext; private int reportLimit = 50; - public CyclomaticComplexity(BugReporter bugReporter) { + public CyclomaticComplexity(final BugReporter bugReporter) { this.bugReporter = bugReporter; Integer limit = Integer.getInteger(LIMIT_PROPERTY); if (limit != null) @@ -54,7 +54,7 @@ return super.clone(); } - public void visitClassContext(ClassContext context) { + public void visitClassContext(final ClassContext context) { classContext = context; classContext.getJavaClass().accept(this); } @@ -62,7 +62,7 @@ public void report() { } - public void visitMethod(Method obj) { + public void visitMethod(final Method obj) { try { if (obj.getCode() == null) return; Index: ClassEnvy.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ClassEnvy.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- ClassEnvy.java 17 Sep 2005 20:48:31 -0000 1.3 +++ ClassEnvy.java 1 Oct 2005 07:22:44 -0000 1.4 @@ -46,7 +46,7 @@ private int thisClsAccessCount; private double envyPercent = 0.90; - public ClassEnvy(BugReporter bugReporter) { + public ClassEnvy(final BugReporter bugReporter) { this.bugReporter = bugReporter; stack = new OpcodeStack(); String percent = System.getProperty(ENVY_PERCENT_PROPERTY); @@ -63,14 +63,14 @@ return super.clone(); } - public void visitClassContext(ClassContext classContext) { + public void visitClassContext(final ClassContext classContext) { JavaClass cls = classContext.getJavaClass(); packageName = cls.getPackageName(); clsName = cls.getClassName(); super.visitClassContext(classContext); } - public void visitCode(Code obj) { + public void visitCode(final Code obj) { stack.resetForMethodEntry(this); clsAccessCount = new HashMap<String, Integer>(); thisClsAccessCount = 0; @@ -104,7 +104,7 @@ } } - public void sawOpcode(int seen) { + public void sawOpcode(final int seen) { try { if ((seen == INVOKEVIRTUAL) || (seen == INVOKEINTERFACE) @@ -131,7 +131,7 @@ } } - private boolean countClassAccess(int classAtStackIndex) { + private boolean countClassAccess(final int classAtStackIndex) { String calledClass = null; try { @@ -153,7 +153,7 @@ return true; } - private void countClassAccess(String calledClass) { + private void countClassAccess(final String calledClass) { if (calledClass.equals(clsName)) thisClsAccessCount++; else { @@ -170,7 +170,7 @@ } } - private boolean generalPurpose(String className) { + private boolean generalPurpose(final String className) { try { JavaClass cls = Repository.lookupClass(className); JavaClass[] infs = cls.getAllInterfaces(); @@ -204,14 +204,14 @@ return false; } - private String getPackageName(String className) { + private String getPackageName(final String className) { int dotPos = className.lastIndexOf("."); if (dotPos < 0) return ""; return className.substring(0, dotPos); } - private boolean similarPackages(String packName1, String packName2, int depth) { + private boolean similarPackages(final String packName1, final String packName2, int depth) { if (depth == 0) return true; Index: ParallelLists.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ParallelLists.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- ParallelLists.java 25 Sep 2005 06:07:02 -0000 1.4 +++ ParallelLists.java 1 Oct 2005 07:22:44 -0000 1.5 @@ -42,7 +42,7 @@ private Set<String> listFields = new HashSet<String>(); private Map<Integer, String> indexToFieldMap = new HashMap<Integer, String>(); - public ParallelLists(BugReporter bugReporter) { + public ParallelLists(final BugReporter bugReporter) { this.bugReporter = bugReporter; } @@ -50,7 +50,7 @@ return super.clone(); } - public void visitClassContext(ClassContext classContext) { + public void visitClassContext(final ClassContext classContext) { JavaClass cls = classContext.getJavaClass(); listFields.clear(); @@ -70,13 +70,13 @@ super.visitClassContext(classContext); } - public void visitCode(Code obj) { + public void visitCode(final Code obj) { stack.resetForMethodEntry(this); indexToFieldMap.clear(); super.visitCode(obj); } - public void sawOpcode(int seen) { + public void sawOpcode(final int seen) { try { if (seen == INVOKEINTERFACE) { String className = getClassConstantOperand(); @@ -101,7 +101,7 @@ } } - private int getIntOpRegister(int seen) { + private int getIntOpRegister(final int seen) { if ((seen == ISTORE) || (seen == IINC)) return getRegisterOperand(); return seen - ISTORE_0; Index: LiteralStringComparison.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/LiteralStringComparison.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- LiteralStringComparison.java 20 Sep 2005 01:49:58 -0000 1.2 +++ LiteralStringComparison.java 1 Oct 2005 07:22:44 -0000 1.3 @@ -30,7 +30,7 @@ private BugReporter bugReporter; private OpcodeStack stack; - public LiteralStringComparison(BugReporter bugReporter) { + public LiteralStringComparison(final BugReporter bugReporter) { this.bugReporter = bugReporter; stack = new OpcodeStack(); } @@ -39,12 +39,12 @@ return super.clone(); } - public void visitCode(Code obj) { + public void visitCode(final Code obj) { stack.resetForMethodEntry(this); super.visitCode(obj); } - public void sawOpcode(int seen) { + public void sawOpcode(final int seen) { try { if ((seen == INVOKEVIRTUAL) && "java/lang/String".equals(getClassConstantOperand())) { String calledMethodName = getNameConstantOperand(); Index: DubiousListCollection.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DubiousListCollection.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- DubiousListCollection.java 22 Sep 2005 05:45:13 -0000 1.3 +++ DubiousListCollection.java 1 Oct 2005 07:22:44 -0000 1.4 @@ -62,7 +62,7 @@ private OpcodeStack stack = new OpcodeStack(); private Map<String, Integer> fieldsReported = new HashMap<String, Integer>(); - public DubiousListCollection(BugReporter bugReporter) { + public DubiousListCollection(final BugReporter bugReporter) { this.bugReporter = bugReporter; } @@ -85,12 +85,12 @@ } } - public void visitCode(Code obj) { + public void visitCode(final Code obj) { stack.resetForMethodEntry(this); super.visitCode(obj); } - public void sawOpcode(int seen) { + public void sawOpcode(final int seen) { try { if (seen == INVOKEINTERFACE) { String className = this.getClassConstantOperand(); @@ -128,7 +128,7 @@ } } - private FieldAnnotation getFieldFromStack(OpcodeStack stk, String signature) { + private FieldAnnotation getFieldFromStack(final OpcodeStack stk, final String signature) { int parmCount = Type.getArgumentTypes(signature).length; if (stk.getStackDepth() > parmCount) { OpcodeStack.Item itm = stk.getStackItem(parmCount); @@ -153,7 +153,7 @@ } } - private FieldAnnotation getFieldAnnotation(String fieldName) { + private FieldAnnotation getFieldAnnotation(final String fieldName) { JavaClass cls = getClassContext().getJavaClass(); Field[] fields = cls.getFields(); for (Field f : fields) { Index: PartiallyConstructedObjectAccess.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PartiallyConstructedObjectAccess.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- PartiallyConstructedObjectAccess.java 20 Sep 2005 02:28:42 -0000 1.1 +++ PartiallyConstructedObjectAccess.java 1 Oct 2005 07:22:44 -0000 1.2 @@ -36,7 +36,7 @@ private OpcodeStack stack; private boolean reportedCtor; - public PartiallyConstructedObjectAccess(BugReporter bugReporter) { + public PartiallyConstructedObjectAccess(final BugReporter bugReporter) { this.bugReporter = bugReporter; stack = new OpcodeStack(); } @@ -45,13 +45,13 @@ return super.clone(); } - public void visitClassContext(ClassContext classContext) { + public void visitClassContext(final ClassContext classContext) { JavaClass cls = classContext.getJavaClass(); if ((cls.getAccessFlags() & Constants.ACC_FINAL) == 0) super.visitClassContext(classContext); } - public void visitCode(Code obj) { + public void visitCode(final Code obj) { stack.resetForMethodEntry(this); reportedCtor = false; if ("<init>".equals(getMethodName())) @@ -91,7 +91,7 @@ } } - private Method findMethod(JavaClass cls, String methodName, String methodSig) { + private Method findMethod(final JavaClass cls, final String methodName, final String methodSig) { Method[] methods = cls.getMethods(); for (Method m : methods) { if (methodName.equals(m.getName()) && methodSig.equals(m.getSignature())) { Index: InefficientStringBuffering.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/InefficientStringBuffering.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- InefficientStringBuffering.java 3 Sep 2005 05:07:18 -0000 1.1 +++ InefficientStringBuffering.java 1 Oct 2005 07:22:44 -0000 1.2 @@ -32,7 +32,7 @@ private BugReporter bugReporter; private OpcodeStack opStack; - public InefficientStringBuffering(BugReporter bugReporter) { + public InefficientStringBuffering(final BugReporter bugReporter) { this.bugReporter = bugReporter; opStack = new OpcodeStack(); } @@ -41,13 +41,13 @@ return super.clone(); } - public void visit(Code c) { + public void visit(final Code c) { if (c.getCode() != null) { opStack.resetForMethodEntry(this); super.visit(c); } } - public void sawOpcode(int seen) { + public void sawOpcode(final int seen) { try { if (seen == INVOKESPECIAL) { String calledClass = getClassConstantOperand(); Index: OverlyConcreteParameter.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/OverlyConcreteParameter.java,v retrieving revision 1.16 retrieving revision 1.17 diff -u -d -r1.16 -r1.17 --- OverlyConcreteParameter.java 22 Sep 2005 02:04:37 -0000 1.16 +++ OverlyConcreteParameter.java 1 Oct 2005 07:22:44 -0000 1.17 @@ -51,7 +51,7 @@ private int parmCount; private boolean methodIsStatic; - public OverlyConcreteParameter(BugReporter bugReporter) { + public OverlyConcreteParameter(final BugReporter bugReporter) { this.bugReporter = bugReporter; try { objectClass = Repository.lookupClass("java.lang.Object"); @@ -65,7 +65,7 @@ return super.clone(); } - public void visitCode(Code obj) { + public void visitCode(final Code obj) { try { parameterDefiners.clear(); usedParameters.clear(); @@ -89,7 +89,7 @@ } } - public void sawOpcode(int seen) { + public void sawOpcode(final int seen) { if (parameterDefiners.size() == 0) return; @@ -215,7 +215,7 @@ return hasPossiblyOverlyConcreteParm; } - private Map<JavaClass, List<String>> getClassDefiners(JavaClass cls) + private Map<JavaClass, List<String>> getClassDefiners(final JavaClass cls) throws ClassNotFoundException { Map<JavaClass, List<String>> definers = new HashMap<JavaClass, List<String>>(); @@ -236,7 +236,7 @@ return definers; } - private List<String> getPublicMethodInfos(JavaClass cls) { + private List<String> getPublicMethodInfos(final JavaClass cls) { List<String> methodInfos = new ArrayList<String>(); Method[] methods = cls.getMethods(); for (Method m : methods) { @@ -248,7 +248,7 @@ return methodInfos; } - private void removeUselessDefiners(int reg) { + private void removeUselessDefiners(final int reg) { String methodSig = getSigConstantOperand(); String methodName = getNameConstantOperand(); String methodInfo = methodName + methodSig; @@ -275,7 +275,7 @@ } } - private void removeUselessDefiners(String parmSig, int reg) { + private void removeUselessDefiners(String parmSig, final int reg) { if (parmSig.startsWith("L")) { parmSig = parmSig.substring( 1, parmSig.length() - 1).replace('/', '.'); if ("java.lang.Object".equals(parmSig)) { |
From: Dave B. <dbr...@us...> - 2005-10-02 21:35:01
|
Update of /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25476/src/com/mebigfatguy/fbcontrib/detect Modified Files: SyncCollectionIterators.java Log Message: obey LSC Index: SyncCollectionIterators.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SyncCollectionIterators.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- SyncCollectionIterators.java 1 Oct 2005 07:22:44 -0000 1.3 +++ SyncCollectionIterators.java 1 Oct 2005 07:24:36 -0000 1.4 @@ -80,7 +80,7 @@ public void sawOpcode(final int seen) { switch (state) { case SEEN_NOTHING: - if ((seen == INVOKESTATIC) && getClassConstantOperand().equals("java/util/Collections")) { + if ((seen == INVOKESTATIC) && "java/util/Collections".equals(getClassConstantOperand())) { if (synchCollectionNames.contains(getNameConstantOperand())) { state = SEEN_SYNC; } |
Update of /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27324/src/com/mebigfatguy/fbcontrib/detect Modified Files: ClassEnvy.java CyclomaticComplexity.java DeclaredRuntimeException.java DubiousListCollection.java FinalParameters.java InefficientStringBuffering.java ListIndexedIterating.java LiteralStringComparison.java OverlyConcreteParameter.java ParallelLists.java PartiallyConstructedObjectAccess.java SyncCollectionIterators.java UnrelatedCollectionContents.java Log Message: add @Override annotations Index: DeclaredRuntimeException.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DeclaredRuntimeException.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- DeclaredRuntimeException.java 1 Oct 2005 07:22:44 -0000 1.4 +++ DeclaredRuntimeException.java 1 Oct 2005 07:38:02 -0000 1.5 @@ -53,6 +53,7 @@ this.bugReporter = bugReporter; } + @Override public Object clone() throws CloneNotSupportedException { return super.clone(); } @@ -62,6 +63,7 @@ classContext.getJavaClass().accept(this); } + @Override public void visitMethod(final Method obj) { ExceptionTable et = obj.getExceptionTable(); if (et != null) { Index: ListIndexedIterating.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ListIndexedIterating.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- ListIndexedIterating.java 1 Oct 2005 07:22:44 -0000 1.2 +++ ListIndexedIterating.java 1 Oct 2005 07:38:02 -0000 1.3 @@ -56,10 +56,12 @@ possibleForLoops = new HashSet<ForLoop>(); } + @Override public Object clone() throws CloneNotSupportedException { return super.clone(); } + @Override public void visitCode(final Code obj) { sawListSize = false; @@ -76,6 +78,7 @@ } } + @Override public void sawOpcode(final int seen) { if (stage == FIND_LOOP_STAGE) sawOpcodeLoop(seen); Index: UnrelatedCollectionContents.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/UnrelatedCollectionContents.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- UnrelatedCollectionContents.java 1 Oct 2005 07:22:44 -0000 1.7 +++ UnrelatedCollectionContents.java 1 Oct 2005 07:38:02 -0000 1.8 @@ -62,16 +62,19 @@ stack = new OpcodeStack(); } + @Override public Object clone() throws CloneNotSupportedException { return super.clone(); } + @Override public void visitClassContext(final ClassContext classContext) { memberCollections = new HashMap<String, Set<String>>(); memberSourceLineAnnotations = new HashMap<String, Set<SourceLineAnnotation>>(); super.visitClassContext(classContext); } + @Override public void visitCode(final Code obj) { localCollections = new HashMap<Integer, Set<String>>(); localScopeEnds = new HashMap<Integer, Set<Integer>>(); @@ -80,6 +83,7 @@ super.visitCode(obj); } + @Override public void sawOpcode(final int seen) { try { Set<Integer> regs = localScopeEnds.remove(getPC()); Index: SyncCollectionIterators.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SyncCollectionIterators.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- SyncCollectionIterators.java 1 Oct 2005 07:24:36 -0000 1.4 +++ SyncCollectionIterators.java 1 Oct 2005 07:38:02 -0000 1.5 @@ -61,15 +61,18 @@ this.bugReporter = bugReporter; } + @Override public Object clone() throws CloneNotSupportedException { return super.clone(); } + @Override public void visitClassContext(final ClassContext classContext) { memberCollections.clear(); super.visitClassContext(classContext); } + @Override public void visitCode(final Code obj) { if (obj.getCode() != null) { state = SEEN_NOTHING; @@ -77,6 +80,8 @@ super.visitCode(obj); } } + + @Override public void sawOpcode(final int seen) { switch (state) { case SEEN_NOTHING: Index: FinalParameters.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/FinalParameters.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- FinalParameters.java 1 Oct 2005 07:22:44 -0000 1.3 +++ FinalParameters.java 1 Oct 2005 07:38:02 -0000 1.4 @@ -45,10 +45,12 @@ this.bugReporter = bugReporter; } + @Override public Object clone() throws CloneNotSupportedException { return super.clone(); } + @Override public void visitMethod(final Method obj) { isStatic = (obj.getAccessFlags() & Constants.ACC_STATIC) != 0; isAbstract = (obj.getAccessFlags() & Constants.ACC_ABSTRACT) != 0; @@ -57,6 +59,7 @@ super.visitMethod(obj); } + @Override public void visitCode(final Code obj) { if (isAbstract) return; @@ -82,6 +85,7 @@ } } + @Override public void sawOpcode(final int seen) { if ((seen == ASTORE) || ((seen >= ASTORE_0) && (seen <= ASTORE_3))) { int parm = getAStoreParameter(seen); Index: CyclomaticComplexity.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/CyclomaticComplexity.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- CyclomaticComplexity.java 1 Oct 2005 07:22:44 -0000 1.4 +++ CyclomaticComplexity.java 1 Oct 2005 07:38:02 -0000 1.5 @@ -50,6 +50,7 @@ reportLimit = limit.intValue(); } + @Override public Object clone() throws CloneNotSupportedException { return super.clone(); } @@ -62,6 +63,7 @@ public void report() { } + @Override public void visitMethod(final Method obj) { try { if (obj.getCode() == null) Index: ClassEnvy.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ClassEnvy.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- ClassEnvy.java 1 Oct 2005 07:22:44 -0000 1.4 +++ ClassEnvy.java 1 Oct 2005 07:38:02 -0000 1.5 @@ -59,10 +59,12 @@ } } + @Override public Object clone() throws CloneNotSupportedException { return super.clone(); } + @Override public void visitClassContext(final ClassContext classContext) { JavaClass cls = classContext.getJavaClass(); packageName = cls.getPackageName(); @@ -70,6 +72,7 @@ super.visitClassContext(classContext); } + @Override public void visitCode(final Code obj) { stack.resetForMethodEntry(this); clsAccessCount = new HashMap<String, Integer>(); @@ -104,6 +107,7 @@ } } + @Override public void sawOpcode(final int seen) { try { if ((seen == INVOKEVIRTUAL) Index: ParallelLists.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ParallelLists.java,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- ParallelLists.java 1 Oct 2005 07:22:44 -0000 1.5 +++ ParallelLists.java 1 Oct 2005 07:38:02 -0000 1.6 @@ -46,10 +46,12 @@ this.bugReporter = bugReporter; } + @Override public Object clone() throws CloneNotSupportedException { return super.clone(); } + @Override public void visitClassContext(final ClassContext classContext) { JavaClass cls = classContext.getJavaClass(); @@ -70,12 +72,14 @@ super.visitClassContext(classContext); } + @Override public void visitCode(final Code obj) { stack.resetForMethodEntry(this); indexToFieldMap.clear(); super.visitCode(obj); } + @Override public void sawOpcode(final int seen) { try { if (seen == INVOKEINTERFACE) { Index: LiteralStringComparison.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/LiteralStringComparison.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- LiteralStringComparison.java 1 Oct 2005 07:22:44 -0000 1.3 +++ LiteralStringComparison.java 1 Oct 2005 07:38:02 -0000 1.4 @@ -35,15 +35,18 @@ stack = new OpcodeStack(); } + @Override public Object clone() throws CloneNotSupportedException { return super.clone(); } + @Override public void visitCode(final Code obj) { stack.resetForMethodEntry(this); super.visitCode(obj); } + @Override public void sawOpcode(final int seen) { try { if ((seen == INVOKEVIRTUAL) && "java/lang/String".equals(getClassConstantOperand())) { Index: DubiousListCollection.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DubiousListCollection.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- DubiousListCollection.java 1 Oct 2005 07:22:44 -0000 1.4 +++ DubiousListCollection.java 1 Oct 2005 07:38:02 -0000 1.5 @@ -66,6 +66,7 @@ this.bugReporter = bugReporter; } + @Override public void visitClassContext(ClassContext classContext) { JavaClass cls = classContext.getJavaClass(); Field[] flds = cls.getFields(); @@ -85,11 +86,13 @@ } } + @Override public void visitCode(final Code obj) { stack.resetForMethodEntry(this); super.visitCode(obj); } + @Override public void sawOpcode(final int seen) { try { if (seen == INVOKEINTERFACE) { Index: PartiallyConstructedObjectAccess.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PartiallyConstructedObjectAccess.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- PartiallyConstructedObjectAccess.java 1 Oct 2005 07:22:44 -0000 1.2 +++ PartiallyConstructedObjectAccess.java 1 Oct 2005 07:38:02 -0000 1.3 @@ -41,16 +41,19 @@ stack = new OpcodeStack(); } + @Override public Object clone() throws CloneNotSupportedException { return super.clone(); } + @Override public void visitClassContext(final ClassContext classContext) { JavaClass cls = classContext.getJavaClass(); if ((cls.getAccessFlags() & Constants.ACC_FINAL) == 0) super.visitClassContext(classContext); } + @Override public void visitCode(final Code obj) { stack.resetForMethodEntry(this); reportedCtor = false; @@ -58,6 +61,7 @@ super.visitCode(obj); } + @Override public void sawOpcode(int seen) { if (reportedCtor) return; Index: InefficientStringBuffering.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/InefficientStringBuffering.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- InefficientStringBuffering.java 1 Oct 2005 07:22:44 -0000 1.2 +++ InefficientStringBuffering.java 1 Oct 2005 07:38:02 -0000 1.3 @@ -37,16 +37,20 @@ opStack = new OpcodeStack(); } + @Override public Object clone() throws CloneNotSupportedException { return super.clone(); } + @Override public void visit(final Code c) { if (c.getCode() != null) { opStack.resetForMethodEntry(this); super.visit(c); } } + + @Override public void sawOpcode(final int seen) { try { if (seen == INVOKESPECIAL) { Index: OverlyConcreteParameter.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/OverlyConcreteParameter.java,v retrieving revision 1.17 retrieving revision 1.18 diff -u -d -r1.17 -r1.18 --- OverlyConcreteParameter.java 1 Oct 2005 07:22:44 -0000 1.17 +++ OverlyConcreteParameter.java 1 Oct 2005 07:38:02 -0000 1.18 @@ -61,10 +61,12 @@ } } + @Override public Object clone() throws CloneNotSupportedException { return super.clone(); } + @Override public void visitCode(final Code obj) { try { parameterDefiners.clear(); @@ -89,6 +91,7 @@ } } + @Override public void sawOpcode(final int seen) { if (parameterDefiners.size() == 0) return; |
From: Dave B. <dbr...@us...> - 2005-09-25 06:12:05
|
Update of /cvsroot/fb-contrib/fb-contrib/htdocs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3424/htdocs Modified Files: index.html Log Message: doc PL Index: index.html =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/htdocs/index.html,v retrieving revision 1.12 retrieving revision 1.13 diff -u -d -r1.12 -r1.13 --- index.html 22 Sep 2005 05:53:04 -0000 1.12 +++ index.html 25 Sep 2005 06:11:56 -0000 1.13 @@ -18,6 +18,10 @@ Detectors added in CVS<br/> Note: these detectors are still in testing<br/> <ul> + <li><b>Parallel Lists</b><br/> + Finds classes that maintain two or more lists or arrays that appear to share a one-to-one relationship + through a common index. It is usually better to create a separate class that holds all corresponding attributes, + and add instances of this class to just one list or array.</li> <li><b>Dubious List Collection</b><br/> Finds fields that are implementations of java.util.List, but that are used in a set-like fashion. Since lookup type operations are performed using a linear search for Lists, the performance for large |
From: Dave B. <dbr...@us...> - 2005-09-25 06:11:11
|
Update of /cvsroot/fb-contrib/fb-contrib/etc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3259/etc Modified Files: messages.xml Log Message: add hyphens for clarity Index: messages.xml =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/etc/messages.xml,v retrieving revision 1.20 retrieving revision 1.21 diff -u -d -r1.20 -r1.21 --- messages.xml 25 Sep 2005 05:34:22 -0000 1.20 +++ messages.xml 25 Sep 2005 06:11:03 -0000 1.21 @@ -160,7 +160,7 @@ <Detector class="com.mebigfatguy.fbcontrib.detect.ParallelLists"> <Details> <![CDATA[ - <p> Looks for classes that maintain two or more lists or arrays associated one for one through the same index + <p> Looks for classes that maintain two or more lists or arrays associated one-for-one through the same index to hold two or more pieces of related information. It would be better to create a new class that holds all of these pieces of information, and place instances of this class in one list.</p> <p>It is a fast detector</p> @@ -323,7 +323,7 @@ <LongDescription>class {0} defines two or more one for one associated lists or arrays</LongDescription> <Details> <![CDATA[ - <p>This class appears to maintain two or more lists or arrays who's contains is related one for one + <p>This class appears to maintain two or more lists or arrays who's contains is related one-for-one through the index of the list or array. Consider creating a separate class to hold all the related pieces of information, and adding instances of this class to just one list or array.</p> ]]> |
From: Dave B. <dbr...@us...> - 2005-09-25 06:09:14
|
Update of /cvsroot/fb-contrib/fb-contrib/etc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2859/etc Modified Files: findbugs.xml Log Message: ok, the false positives aren't hideous, un-hide it Index: findbugs.xml =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/etc/findbugs.xml,v retrieving revision 1.18 retrieving revision 1.19 diff -u -d -r1.18 -r1.19 --- findbugs.xml 25 Sep 2005 04:49:10 -0000 1.18 +++ findbugs.xml 25 Sep 2005 06:09:03 -0000 1.19 @@ -64,8 +64,7 @@ <Detector class="com.mebigfatguy.fbcontrib.detect.ParallelLists" speed="fast" - reports="PL_PARALLEL_LISTS" - hidden="true" /> + reports="PL_PARALLEL_LISTS" /> <!-- BugPattern --> |
From: Dave B. <dbr...@us...> - 2005-09-25 06:07:10
|
Update of /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2573/src/com/mebigfatguy/fbcontrib/detect Modified Files: ParallelLists.java Log Message: if the register changes inbetween the two lists, clear the list for the reg Index: ParallelLists.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ParallelLists.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- ParallelLists.java 25 Sep 2005 05:46:46 -0000 1.3 +++ ParallelLists.java 25 Sep 2005 06:07:02 -0000 1.4 @@ -90,6 +90,9 @@ } } else if ((seen >= IFEQ) && (seen <= RETURN)) { indexToFieldMap.clear(); + } else if ((seen == ISTORE) || (seen == IINC) || ((seen >= ISTORE_0) && (seen <= ISTORE_3))) { + int reg = getIntOpRegister(seen); + indexToFieldMap.remove(new Integer(reg)); } else if ((seen >= IALOAD) && (seen <= SALOAD)) { checkParms(); } @@ -98,6 +101,12 @@ } } + private int getIntOpRegister(int seen) { + if ((seen == ISTORE) || (seen == IINC)) + return getRegisterOperand(); + return seen - ISTORE_0; + } + private void checkParms() { if (stack.getStackDepth() >= 2) { OpcodeStack.Item index = stack.getStackItem(0); |
From: Dave B. <dbr...@us...> - 2005-09-25 06:07:10
|
Update of /cvsroot/fb-contrib/fb-contrib/samples In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2573/samples Modified Files: PL_Sample.java Log Message: if the register changes inbetween the two lists, clear the list for the reg Index: PL_Sample.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/samples/PL_Sample.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- PL_Sample.java 25 Sep 2005 05:46:46 -0000 1.2 +++ PL_Sample.java 25 Sep 2005 06:07:02 -0000 1.3 @@ -11,6 +11,9 @@ String[] make = new String[100]; String[] model = new String[100]; + int[] x = new int[10]; + int[] y = new int[10]; + public void printPeople() { for (int i = 0; i < name.size(); i++) @@ -32,4 +35,12 @@ return null; } + + public void testFP() + { + int i = 0; + int xx = x[i]; + i += 1; + int yy = y[i]; + } } \ No newline at end of file |
From: Dave B. <dbr...@us...> - 2005-09-25 05:46:54
|
Update of /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv32132/src/com/mebigfatguy/fbcontrib/detect Modified Files: ParallelLists.java Log Message: add support for array loading, fix some sillyness Index: ParallelLists.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ParallelLists.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- ParallelLists.java 25 Sep 2005 04:49:53 -0000 1.2 +++ ParallelLists.java 25 Sep 2005 05:46:46 -0000 1.3 @@ -62,7 +62,7 @@ if (sig.startsWith("java/util/") && sig.endsWith("List")) { listFields.add(f.getName()); } - } else if (sig.charAt(0) == '[') + } else if ((sig.charAt(0) == '[') && (sig.charAt(1) != '[')) listFields.add(f.getName()); } @@ -86,35 +86,41 @@ if ("java/util/List".equals(className) && "get".equals(methodName) && "(I)Ljava/lang/Object;".equals(methodSig)) { - if (stack.getStackDepth() > 2) { - OpcodeStack.Item index = stack.getStackItem(0); - OpcodeStack.Item list =stack.getStackItem(1); - - int indexReg = index.getRegisterNumber(); - FieldAnnotation fa = list.getField(); - - if ((indexReg >= 0) && (fa != null)) { - if (listFields.contains(fa.getFieldName())) { - String f = indexToFieldMap.get(new Integer(indexReg)); - if (f != null) { - bugReporter.reportBug( new BugInstance( this, "PL_PARALLEL_LISTS", NORMAL_PRIORITY) - .addClass(this) - .addMethod(this) - .addSourceLine(this, getPC())); - } - listFields.remove(fa.getFieldName()); - indexToFieldMap.clear(); - } - else - indexToFieldMap.put(new Integer(indexReg), fa.getFieldName()); - } - } + checkParms(); } } else if ((seen >= IFEQ) && (seen <= RETURN)) { indexToFieldMap.clear(); + } else if ((seen >= IALOAD) && (seen <= SALOAD)) { + checkParms(); } } finally { stack.sawOpcode(this, seen); } } + + private void checkParms() { + if (stack.getStackDepth() >= 2) { + OpcodeStack.Item index = stack.getStackItem(0); + OpcodeStack.Item list =stack.getStackItem(1); + + int indexReg = index.getRegisterNumber(); + FieldAnnotation fa = list.getField(); + + if ((indexReg >= 0) && (fa != null)) { + if (listFields.contains(fa.getFieldName())) { + String f = indexToFieldMap.get(new Integer(indexReg)); + if ((f != null) && (!f.equals(fa.getFieldName()))) { + bugReporter.reportBug( new BugInstance( this, "PL_PARALLEL_LISTS", NORMAL_PRIORITY) + .addClass(this) + .addMethod(this) + .addSourceLine(this, getPC())); + listFields.remove(fa.getFieldName()); + indexToFieldMap.clear(); + } + else + indexToFieldMap.put(new Integer(indexReg), fa.getFieldName()); + } + } + } + } } |
From: Dave B. <dbr...@us...> - 2005-09-25 05:46:54
|
Update of /cvsroot/fb-contrib/fb-contrib/samples In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv32132/samples Modified Files: PL_Sample.java Log Message: add support for array loading, fix some sillyness Index: PL_Sample.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/samples/PL_Sample.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- PL_Sample.java 25 Sep 2005 05:16:15 -0000 1.1 +++ PL_Sample.java 25 Sep 2005 05:46:46 -0000 1.2 @@ -8,6 +8,9 @@ List<String> name = new ArrayList<String>(); List<Integer> age = new ArrayList<Integer>(); + String[] make = new String[100]; + String[] model = new String[100]; + public void printPeople() { for (int i = 0; i < name.size(); i++) @@ -15,4 +18,18 @@ System.out.println(name.get(i) + " " + age.get(i)); } } + + public String getModel(String cMake) + { + for (int i = 0; i < 100; i++) + { + String carMake = make[i]; + String carModel = model[i]; + + if (cMake.equals(carMake)) + return carModel; + } + + return null; + } } \ No newline at end of file |
From: Dave B. <dbr...@us...> - 2005-09-25 05:34:31
|
Update of /cvsroot/fb-contrib/fb-contrib/etc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30345/etc Modified Files: messages.xml Log Message: silly fixes Index: messages.xml =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/etc/messages.xml,v retrieving revision 1.19 retrieving revision 1.20 diff -u -d -r1.19 -r1.20 --- messages.xml 25 Sep 2005 05:19:33 -0000 1.19 +++ messages.xml 25 Sep 2005 05:34:22 -0000 1.20 @@ -344,6 +344,6 @@ <BugCode abbrev="LSC">Literal String Comparison</BugCode> <BugCode abbrev="PCOA">Partially Constructed Object Access</BugCode> <BugCode abbrev="DLC">Dubious List Collection</BugCode> - <BugCode abbrev="PL">PL_PARALLEL_LISTS</BugCode> + <BugCode abbrev="PL">Parallel Lists</BugCode> </MessageCollection> \ No newline at end of file |
From: Dave B. <dbr...@us...> - 2005-09-25 05:19:43
|
Update of /cvsroot/fb-contrib/fb-contrib/etc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28386/etc Modified Files: messages.xml Log Message: fix description Index: messages.xml =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/etc/messages.xml,v retrieving revision 1.18 retrieving revision 1.19 diff -u -d -r1.18 -r1.19 --- messages.xml 25 Sep 2005 04:49:11 -0000 1.18 +++ messages.xml 25 Sep 2005 05:19:33 -0000 1.19 @@ -157,7 +157,7 @@ </Details> </Detector> - <Detector class="com.mebigfatguy.fbcontrib.detect.DubiousListCollection"> + <Detector class="com.mebigfatguy.fbcontrib.detect.ParallelLists"> <Details> <![CDATA[ <p> Looks for classes that maintain two or more lists or arrays associated one for one through the same index |
From: Dave B. <dbr...@us...> - 2005-09-25 05:16:24
|
Update of /cvsroot/fb-contrib/fb-contrib/samples In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27851/samples Added Files: PL_Sample.java Log Message: Initial Checkin: PL Detector --- NEW FILE: PL_Sample.java --- import java.util.ArrayList; import java.util.List; public class PL_Sample { List<String> name = new ArrayList<String>(); List<Integer> age = new ArrayList<Integer>(); public void printPeople() { for (int i = 0; i < name.size(); i++) { System.out.println(name.get(i) + " " + age.get(i)); } } } |
From: Dave B. <dbr...@us...> - 2005-09-25 04:50:00
|
Update of /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23820/src/com/mebigfatguy/fbcontrib/detect Modified Files: ParallelLists.java Log Message: add copyright Index: ParallelLists.java =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ParallelLists.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- ParallelLists.java 25 Sep 2005 03:37:23 -0000 1.1 +++ ParallelLists.java 25 Sep 2005 04:49:53 -0000 1.2 @@ -1,3 +1,21 @@ +/* + * fb-contrib - Auxilliary detectors for Java programs + * Copyright (C) 2005 Dave Brosius + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ package com.mebigfatguy.fbcontrib.detect; import java.util.HashMap; |
From: Dave B. <dbr...@us...> - 2005-09-25 04:49:23
|
Update of /cvsroot/fb-contrib/fb-contrib/etc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23743/etc Modified Files: findbugs.xml messages.xml Log Message: Initial Checkin: PL Detector Index: messages.xml =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/etc/messages.xml,v retrieving revision 1.17 retrieving revision 1.18 diff -u -d -r1.17 -r1.18 --- messages.xml 23 Sep 2005 01:44:48 -0000 1.17 +++ messages.xml 25 Sep 2005 04:49:11 -0000 1.18 @@ -157,6 +157,17 @@ </Details> </Detector> + <Detector class="com.mebigfatguy.fbcontrib.detect.DubiousListCollection"> + <Details> + <![CDATA[ + <p> Looks for classes that maintain two or more lists or arrays associated one for one through the same index + to hold two or more pieces of related information. It would be better to create a new class that holds + all of these pieces of information, and place instances of this class in one list.</p> + <p>It is a fast detector</p> + ]]> + </Details> + </Detector> + <!-- BugPattern --> <BugPattern type="ISB_INEFFICIENT_STRING_BUFFERING"> @@ -307,6 +318,18 @@ </Details> </BugPattern> + <BugPattern type="PL_PARALLEL_LISTS"> + <ShortDescription>class defines two or more one for one associated lists or arrays</ShortDescription> + <LongDescription>class {0} defines two or more one for one associated lists or arrays</LongDescription> + <Details> + <![CDATA[ + <p>This class appears to maintain two or more lists or arrays who's contains is related one for one + through the index of the list or array. Consider creating a separate class to hold all the related + pieces of information, and adding instances of this class to just one list or array.</p> + ]]> + </Details> + </BugPattern> + <!-- BugCode --> <BugCode abbrev="ISB">Inefficient String Buffering</BugCode> @@ -321,5 +344,6 @@ <BugCode abbrev="LSC">Literal String Comparison</BugCode> <BugCode abbrev="PCOA">Partially Constructed Object Access</BugCode> <BugCode abbrev="DLC">Dubious List Collection</BugCode> + <BugCode abbrev="PL">PL_PARALLEL_LISTS</BugCode> </MessageCollection> \ No newline at end of file Index: findbugs.xml =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/etc/findbugs.xml,v retrieving revision 1.17 retrieving revision 1.18 diff -u -d -r1.17 -r1.18 --- findbugs.xml 22 Sep 2005 05:48:01 -0000 1.17 +++ findbugs.xml 25 Sep 2005 04:49:10 -0000 1.18 @@ -62,6 +62,12 @@ speed="fast" reports="DLC_DUBIOUS_LIST_COLLECTION" /> + <Detector class="com.mebigfatguy.fbcontrib.detect.ParallelLists" + speed="fast" + reports="PL_PARALLEL_LISTS" + hidden="true" /> + + <!-- BugPattern --> <BugPattern abbrev="ISB" type="ISB_INEFFICIENT_STRING_BUFFERING" category="PERFORMANCE" /> @@ -76,5 +82,6 @@ <BugPattern abbrev="LSC" type="LSC_LITERAL_STRING_COMPARISON" category="STYLE" experimental="true" /> <BugPattern abbrev="PCOA" type="PCOA_PARTIALLY_CONSTRUCTED_OBJECT_ACCESS" category="CORRECTNESS" experimental="true" /> <BugPattern abbrev="DLC" type="DLC_DUBIOUS_LIST_COLLECTION" category="PERFORMANCE" experimental="true" /> + <BugPattern abbrev="PL" type="PL_PARALLEL_LISTS" category="STYLE" experimental="true" /> </FindbugsPlugin> \ No newline at end of file |
From: Dave B. <dbr...@us...> - 2005-09-25 03:37:32
|
Update of /cvsroot/fb-contrib/fb-contrib/src/com/mebigfatguy/fbcontrib/detect In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13034/src/com/mebigfatguy/fbcontrib/detect Added Files: ParallelLists.java Log Message: Initial Checkin: PL detector --- NEW FILE: ParallelLists.java --- package com.mebigfatguy.fbcontrib.detect; import java.util.HashMap; import java.util.HashSet; import java.util.Map; import java.util.Set; import org.apache.bcel.classfile.Code; import org.apache.bcel.classfile.Field; import org.apache.bcel.classfile.JavaClass; import edu.umd.cs.findbugs.BugInstance; import edu.umd.cs.findbugs.BugReporter; import edu.umd.cs.findbugs.BytecodeScanningDetector; import edu.umd.cs.findbugs.FieldAnnotation; import edu.umd.cs.findbugs.OpcodeStack; import edu.umd.cs.findbugs.StatelessDetector; import edu.umd.cs.findbugs.ba.ClassContext; public class ParallelLists extends BytecodeScanningDetector implements StatelessDetector { private BugReporter bugReporter; private OpcodeStack stack = new OpcodeStack(); private Set<String> listFields = new HashSet<String>(); private Map<Integer, String> indexToFieldMap = new HashMap<Integer, String>(); public ParallelLists(BugReporter bugReporter) { this.bugReporter = bugReporter; } public Object clone() throws CloneNotSupportedException { return super.clone(); } public void visitClassContext(ClassContext classContext) { JavaClass cls = classContext.getJavaClass(); listFields.clear(); Field[] flds = cls.getFields(); for (Field f : flds) { String sig = f.getSignature(); if (sig.charAt(0) == 'L') { sig = sig.substring(1, sig.length() - 1); if (sig.startsWith("java/util/") && sig.endsWith("List")) { listFields.add(f.getName()); } } else if (sig.charAt(0) == '[') listFields.add(f.getName()); } if (listFields.size() > 0) super.visitClassContext(classContext); } public void visitCode(Code obj) { stack.resetForMethodEntry(this); indexToFieldMap.clear(); super.visitCode(obj); } public void sawOpcode(int seen) { try { if (seen == INVOKEINTERFACE) { String className = getClassConstantOperand(); String methodName = getNameConstantOperand(); String methodSig = getSigConstantOperand(); if ("java/util/List".equals(className) && "get".equals(methodName) && "(I)Ljava/lang/Object;".equals(methodSig)) { if (stack.getStackDepth() > 2) { OpcodeStack.Item index = stack.getStackItem(0); OpcodeStack.Item list =stack.getStackItem(1); int indexReg = index.getRegisterNumber(); FieldAnnotation fa = list.getField(); if ((indexReg >= 0) && (fa != null)) { if (listFields.contains(fa.getFieldName())) { String f = indexToFieldMap.get(new Integer(indexReg)); if (f != null) { bugReporter.reportBug( new BugInstance( this, "PL_PARALLEL_LISTS", NORMAL_PRIORITY) .addClass(this) .addMethod(this) .addSourceLine(this, getPC())); } listFields.remove(fa.getFieldName()); indexToFieldMap.clear(); } else indexToFieldMap.put(new Integer(indexReg), fa.getFieldName()); } } } } else if ((seen >= IFEQ) && (seen <= RETURN)) { indexToFieldMap.clear(); } } finally { stack.sawOpcode(this, seen); } } } |
From: Dave B. <dbr...@us...> - 2005-09-23 01:44:56
|
Update of /cvsroot/fb-contrib/fb-contrib/etc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv536/etc Modified Files: messages.xml Log Message: more comments Index: messages.xml =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/etc/messages.xml,v retrieving revision 1.16 retrieving revision 1.17 diff -u -d -r1.16 -r1.17 --- messages.xml 22 Sep 2005 23:35:35 -0000 1.16 +++ messages.xml 23 Sep 2005 01:44:48 -0000 1.17 @@ -301,7 +301,8 @@ <![CDATA[ <p>This class defines a field based on java.util.List, but uses it to some extent like a Set. Since lookup type operations are performed using a linear search for Lists, the performance for large - Lists will be poor. Consider changing this fields implementation to a set based one.</p> + Lists will be poor. Consider changing this fields implementation to a set based one. If order of + iteration is important to maintain insert order, perhaps consider a LinkedHashSet.</p> ]]> </Details> </BugPattern> |
From: Dave B. <dbr...@us...> - 2005-09-22 23:36:09
|
Update of /cvsroot/fb-contrib/fb-contrib/etc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5737/etc Modified Files: messages.xml Log Message: don't stutter Index: messages.xml =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/etc/messages.xml,v retrieving revision 1.15 retrieving revision 1.16 diff -u -d -r1.15 -r1.16 --- messages.xml 22 Sep 2005 05:28:28 -0000 1.15 +++ messages.xml 22 Sep 2005 23:35:35 -0000 1.16 @@ -209,7 +209,7 @@ <BugPattern type="LII_LIST_INDEXED_ITERATING"> <ShortDescription>method uses integer based for loops to iterate over a List</ShortDescription> - <LongDescription>method {1} uses uses integer based for loops to iterate over a List</LongDescription> + <LongDescription>method {1} uses integer based for loops to iterate over a List</LongDescription> <Details> <![CDATA[ <p>This method uses an integer based for loop to iterator over a java.util.List, by calling |
From: Dave B. <dbr...@us...> - 2005-09-22 05:53:12
|
Update of /cvsroot/fb-contrib/fb-contrib/htdocs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20666/htdocs Modified Files: index.html Log Message: document DLC Index: index.html =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/htdocs/index.html,v retrieving revision 1.11 retrieving revision 1.12 diff -u -d -r1.11 -r1.12 --- index.html 20 Sep 2005 02:31:27 -0000 1.11 +++ index.html 22 Sep 2005 05:53:04 -0000 1.12 @@ -18,6 +18,10 @@ Detectors added in CVS<br/> Note: these detectors are still in testing<br/> <ul> + <li><b>Dubious List Collection</b><br/> + Finds fields that are implementations of java.util.List, but that are used in a set-like fashion. + Since lookup type operations are performed using a linear search for Lists, the performance for large + Lists will be poor. Consideration should be made as to whether these fields should be sets.</li> <li><b>Partially Constructed Object Access</b><br/> Finds constructors that call non-final methods in non-final classes. If this class is derived from, and the method is overridden, then that method will be executing on an object that hasn't been constructed in regards |
From: Dave B. <dbr...@us...> - 2005-09-22 05:48:08
|
Update of /cvsroot/fb-contrib/fb-contrib/etc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19937/etc Modified Files: findbugs.xml Log Message: well, the false positives aren't heinous, un-hide it for testing Index: findbugs.xml =================================================================== RCS file: /cvsroot/fb-contrib/fb-contrib/etc/findbugs.xml,v retrieving revision 1.16 retrieving revision 1.17 diff -u -d -r1.16 -r1.17 --- findbugs.xml 22 Sep 2005 05:28:28 -0000 1.16 +++ findbugs.xml 22 Sep 2005 05:48:01 -0000 1.17 @@ -60,8 +60,7 @@ <Detector class="com.mebigfatguy.fbcontrib.detect.DubiousListCollection" speed="fast" - reports="DLC_DUBIOUS_LIST_COLLECTION" - hidden="true" /> + reports="DLC_DUBIOUS_LIST_COLLECTION" /> <!-- BugPattern --> |