fb-contrib-commit Mailing List for fb-contrib (Page 8)
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: <dbr...@us...> - 2011-05-05 01:00:44
|
Revision: 1665
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1665&view=rev
Author: dbrosius
Date: 2011-05-05 01:00:38 +0000 (Thu, 05 May 2011)
Log Message:
-----------
fix some SPP temporary trim() false positives
Modified Paths:
--------------
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SillynessPotPourri.java
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SillynessPotPourri.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SillynessPotPourri.java 2011-04-30 19:46:27 UTC (rev 1664)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SillynessPotPourri.java 2011-05-05 01:00:38 UTC (rev 1665)
@@ -345,6 +345,12 @@
.addSourceLine(this));
}
}
+ if (stack.getStackDepth() > 0) {
+ OpcodeStack.Item item = stack.getStackItem(0);
+ if ("trim".equals(item.getUserValue())) {
+ item.setUserValue(null);
+ }
+ }
} else if (((seen >= ALOAD_0) && (seen <= ASTORE_3)) || (seen == ALOAD)) {
lastLoadWasString = false;
LocalVariableTable lvt = getMethod().getLocalVariableTable();
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <dbr...@us...> - 2011-04-30 19:46:33
|
Revision: 1664
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1664&view=rev
Author: dbrosius
Date: 2011-04-30 19:46:27 +0000 (Sat, 30 Apr 2011)
Log Message:
-----------
add LGO detector and sample
Modified Paths:
--------------
trunk/fb-contrib/etc/findbugs.xml
trunk/fb-contrib/etc/messages.xml
Added Paths:
-----------
trunk/fb-contrib/samples/LGO_Sample.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/LingeringGraphicsObjects.java
Modified: trunk/fb-contrib/etc/findbugs.xml
===================================================================
--- trunk/fb-contrib/etc/findbugs.xml 2011-04-26 01:55:51 UTC (rev 1663)
+++ trunk/fb-contrib/etc/findbugs.xml 2011-04-30 19:46:27 UTC (rev 1664)
@@ -220,6 +220,7 @@
<Detector class="com.mebigfatguy.fbcontrib.detect.SuspiciousGetterSetterUse" speed="fast" reports="SGSU_SUSPICIOUS_GETTER_SETTER_USE" />
+ <Detector class="com.mebigfatguy.fbcontrib.detect.LingeringGraphicsObjects" speed="fast" reports="LGO_LINGERING_GRAPHICS_OBJECT" />
<!-- BugPattern -->
<BugPattern abbrev="ISB" type="ISB_INEFFICIENT_STRING_BUFFERING" category="PERFORMANCE" />
@@ -384,4 +385,5 @@
<BugPattern abbrev="PUS" type="PUS_POSSIBLE_UNSUSPECTED_SERIALIZATION" category="CORRECTNESS" experimental="true" />
<BugPattern abbrev="SEC" type="SEC_SIDE_EFFECT_CONSTRUCTOR" category="STYLE" experimental="true" />
<BugPattern abbrev="SGSU" type="SGSU_SUSPICIOUS_GETTER_SETTER_USE" category="CORRECTNESS" experimental="true" />
+ <BugPattern abbrev="LGO" type="LGO_LINGERING_GRAPHICS_OBJECT" category="PERFORMANCE" experimental="true" />
</FindbugsPlugin>
Modified: trunk/fb-contrib/etc/messages.xml
===================================================================
--- trunk/fb-contrib/etc/messages.xml 2011-04-26 01:55:51 UTC (rev 1663)
+++ trunk/fb-contrib/etc/messages.xml 2011-04-30 19:46:27 UTC (rev 1664)
@@ -1191,6 +1191,19 @@
]]>
</Details>
</Detector>
+
+ <Detector class="com.mebigfatguy.fbcontrib.detect.LingeringGraphicsObjects">
+ <Details>
+ <![CDATA[
+ <p>This detector looks for creation of java.awt.Graphics object that do not have the
+ .dispose() method called on them when finished. These objects will be cleaned up by
+ the Garbage collector, bug given the likelyhood that large numbers of these objects can
+ be created in a short period of time, it is better to dispose them as soon as possible
+ </p>
+ <p>It is a fast detector</p>
+ ]]>
+ </Details>
+ </Detector>
<!-- BugPattern -->
@@ -3276,6 +3289,19 @@
]]>
</Details>
</BugPattern>
+
+ <BugPattern type="LGO_LINGERING_GRAPHICS_OBJECT">
+ <ShortDescription>Method allocations a java.awt.Graphics object without disposing it</ShortDescription>
+ <LongDescription>Method {1} allocations a java.awt.Graphics object without disposing it</LongDescription>
+ <Details>
+ <![CDATA[
+ <p>This method allocates a java.awt.Graphics object but doesn't dispose of it when done. While
+ the garbage collecter will clean this up, given that a large number of Graphics objects can be
+ created in a short period of time, it is recommended that you explicitly dispose() of them.
+ </p>
+ ]]>
+ </Details>
+ </BugPattern>
<!-- BugCode -->
@@ -3377,4 +3403,5 @@
<BugCode abbrev="PUS">Possible Unsuspected Serialization</BugCode>
<BugCode abbrev="SEC">Side Effect Constructor</BugCode>
<BugCode abbrev="SGSU">Suspicious Getter Setter Use</BugCode>
+ <BugCode abbrev="LGO">Lingering Graphics Object</BugCode>
</MessageCollection>
Added: trunk/fb-contrib/samples/LGO_Sample.java
===================================================================
--- trunk/fb-contrib/samples/LGO_Sample.java (rev 0)
+++ trunk/fb-contrib/samples/LGO_Sample.java 2011-04-30 19:46:27 UTC (rev 1664)
@@ -0,0 +1,27 @@
+import java.awt.Graphics;
+import java.awt.image.BufferedImage;
+
+
+public class LGO_Sample {
+
+ public void testCreate(Graphics g) {
+ Graphics g2 = g.create();
+ }
+
+ public void testBufferedImage(BufferedImage bi) {
+ Graphics g = bi.getGraphics();
+ }
+
+ public void fpWasDisposed(Graphics g) {
+ Graphics g2 = g.create();
+ try {
+
+ } finally {
+ g2.dispose();
+ }
+ }
+
+ public Graphics returnG(Graphics g) {
+ return g.create();
+ }
+}
Property changes on: trunk/fb-contrib/samples/LGO_Sample.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/LingeringGraphicsObjects.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/LingeringGraphicsObjects.java (rev 0)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/LingeringGraphicsObjects.java 2011-04-30 19:46:27 UTC (rev 1664)
@@ -0,0 +1,146 @@
+/*
+ * fb-contrib - Auxiliary detectors for Java programs
+ * Copyright (C) 2005-2011 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;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+
+import org.apache.bcel.classfile.Code;
+
+import com.mebigfatguy.fbcontrib.utils.RegisterUtils;
+
+import edu.umd.cs.findbugs.BugInstance;
+import edu.umd.cs.findbugs.BugReporter;
+import edu.umd.cs.findbugs.BytecodeScanningDetector;
+import edu.umd.cs.findbugs.OpcodeStack;
+import edu.umd.cs.findbugs.ba.ClassContext;
+
+public class LingeringGraphicsObjects extends BytecodeScanningDetector {
+
+ private static final Set<String> GRAPHICS_PRODUCERS = new HashSet<String>();
+ static {
+ GRAPHICS_PRODUCERS.add("java/awt/image/BufferedImage#getGraphics()Ljava/awt/Graphics;");
+ GRAPHICS_PRODUCERS.add("java/awt/Graphics#create()Ljava/awt/Graphics;");
+ }
+
+ private final BugReporter bugReporter;
+ private OpcodeStack stack;
+ private Map<Integer, Integer> graphicsRegs; //reg->pc
+
+ public LingeringGraphicsObjects(BugReporter bugReporter) {
+ this.bugReporter = bugReporter;
+ }
+
+ @Override
+ public void visitClassContext(ClassContext classContext) {
+ try {
+ stack = new OpcodeStack();
+ graphicsRegs = new HashMap<Integer, Integer>();
+ super.visitClassContext(classContext);
+ } finally {
+ stack = null;
+ graphicsRegs = null;
+ }
+ }
+
+ @Override
+ public void visitCode(Code obj) {
+ stack.resetForMethodEntry(this);
+ super.visitCode(obj);
+ for (Integer pc : graphicsRegs.values()) {
+ bugReporter.reportBug(new BugInstance(this, "LGO_LINGERING_GRAPHICS_OBJECT", NORMAL_PRIORITY)
+ .addClass(this)
+ .addMethod(this)
+ .addSourceLine(this, pc.intValue()));
+ }
+
+ }
+
+ @Override
+ public void sawOpcode(int seen) {
+ Integer sawNewGraphicsAt = null;
+ try {
+ switch (seen) {
+ case ALOAD:
+ case ALOAD_0:
+ case ALOAD_1:
+ case ALOAD_2:
+ case ALOAD_3: {
+ int reg = RegisterUtils.getALoadReg(this, seen);
+ sawNewGraphicsAt = graphicsRegs.get(Integer.valueOf(reg));
+ }
+ break;
+
+ case ASTORE:
+ case ASTORE_0:
+ case ASTORE_1:
+ case ASTORE_2:
+ case ASTORE_3: {
+ if (stack.getStackDepth() > 0) {
+ OpcodeStack.Item item = stack.getStackItem(0);
+ sawNewGraphicsAt = (Integer)item.getUserValue();
+
+ Integer reg = Integer.valueOf(RegisterUtils.getAStoreReg(this, seen));
+ if (sawNewGraphicsAt != null) {
+ graphicsRegs.put(reg, sawNewGraphicsAt);
+ } else {
+ graphicsRegs.remove(reg);
+ }
+ sawNewGraphicsAt = null;
+ }
+ }
+ break;
+
+ case ARETURN:
+ if (stack.getStackDepth() > 0) {
+ OpcodeStack.Item item = stack.getStackItem(0);
+ graphicsRegs.remove(Integer.valueOf(item.getRegisterNumber()));
+ }
+ break;
+
+ case INVOKEVIRTUAL:
+ String clsName = getClassConstantOperand();
+ String methodName = getNameConstantOperand();
+ String methodSig = getSigConstantOperand();
+ String methodInfo = clsName + "#" + methodName + methodSig;
+ if (GRAPHICS_PRODUCERS.contains(methodInfo)) {
+ sawNewGraphicsAt = Integer.valueOf(getPC());
+ } else {
+ if ("java/awt/Graphics#dispose()V".equals(methodInfo)) {
+ if (stack.getStackDepth() > 0) {
+ OpcodeStack.Item item = stack.getStackItem(0);
+ graphicsRegs.remove(Integer.valueOf(item.getRegisterNumber()));
+ }
+ }
+ }
+ break;
+ }
+ } finally {
+ stack.sawOpcode(this, seen);
+ if (sawNewGraphicsAt != null) {
+ if (stack.getStackDepth() > 0) {
+ OpcodeStack.Item item = stack.getStackItem(0);
+ item.setUserValue(sawNewGraphicsAt);
+ }
+ }
+ }
+ }
+}
Property changes on: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/LingeringGraphicsObjects.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <dbr...@us...> - 2011-04-26 01:56:00
|
Revision: 1663
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1663&view=rev
Author: dbrosius
Date: 2011-04-26 01:55:51 +0000 (Tue, 26 Apr 2011)
Log Message:
-----------
don't report OCP for parameters that are returned
Modified Paths:
--------------
trunk/fb-contrib/samples/OCP_Sample.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/OverlyConcreteParameter.java
Modified: trunk/fb-contrib/samples/OCP_Sample.java
===================================================================
--- trunk/fb-contrib/samples/OCP_Sample.java 2011-04-22 05:14:32 UTC (rev 1662)
+++ trunk/fb-contrib/samples/OCP_Sample.java 2011-04-26 01:55:51 UTC (rev 1663)
@@ -24,81 +24,87 @@
{
public String getDisplay(HashSet<String> s, String a, String b)
{
- if (s.contains(a))
+ if (s.contains(a)) {
s.add(b);
- else
+ } else {
s.add(a + b);
-
+ }
+
StringBuffer sb = new StringBuffer();
Iterator<String> it = s.iterator();
- while (it.hasNext())
+ while (it.hasNext()) {
sb.append(it.next());
+ }
return sb.toString();
}
-
+
public void parse(DefaultHandler dh, File f)
throws SAXException, ParserConfigurationException, IOException
{
SAXParserFactory spf = SAXParserFactory.newInstance();
SAXParser sp = spf.newSAXParser();
XMLReader xr = sp.getXMLReader();
-
+
xr.setContentHandler( dh );
xr.parse(new InputSource( new FileInputStream(f)));
}
-
+
public void falsePositive(B b)
{
b.test();
b.x = 4;
}
-
+
+ public Color fpGetColor(Color c) {
+ return c;
+ }
+
public static interface A
{
public void test();
-
+
public void fp() throws IOException;
}
-
+
public static class B implements A
{
public int x = 0;
-
- public void test()
+
+ public void test()
{
-
+
}
-
+
public void fp()
{
-
+
}
}
-
+
public void actionPerformed(ActionEvent ae)
{
-
+
}
-
+
public void ocpFalseFPDueToExceptionSig(B b)
{
b.fp();
}
-
+
@Override
public void usesOCP(LinkedList<String> ll)
{
ll.add("foo");
}
-
+
public void testFPaastore(Color c)
{
Color[] cc = new Color[] { c, c };
}
-
+
private void readObject(ObjectInputStream ois)
{
-
+
}
}
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/OverlyConcreteParameter.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/OverlyConcreteParameter.java 2011-04-22 05:14:32 UTC (rev 1662)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/OverlyConcreteParameter.java 2011-04-26 01:55:51 UTC (rev 1663)
@@ -1,17 +1,17 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
* Copyright (C) 2005-2011 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
@@ -61,7 +61,7 @@
private int parmCount;
private boolean methodSignatureIsConstrained;
private boolean methodIsStatic;
-
+
/**
* constructs a OCP detector given the reporter to report bugs on
* @param bugReporter the sync of bug reports
@@ -75,7 +75,7 @@
objectClass = null;
}
}
-
+
@Override
public void visitClassContext(ClassContext classContext) {
try {
@@ -97,21 +97,21 @@
stack = null;
}
}
-
+
@Override
public void visitMethod(Method obj) {
methodSignatureIsConstrained = false;
String methodName = obj.getName();
-
+
if (!"<init>".equals(methodName)
&& !"<clinit>".equals(methodName)) {
String methodSig = obj.getSignature();
-
+
methodSignatureIsConstrained = methodIsSpecial(methodName, methodSig);
if (!methodSignatureIsConstrained) {
String parms = methodSig.split("\\(|\\)")[1];
if (parms.indexOf(';') >= 0) {
-
+
outer:for (JavaClass cls : constrainingClasses) {
Method[] methods = cls.getMethods();
for (Method m : methods) {
@@ -127,29 +127,33 @@
}
}
}
-
+
@Override
public void visitCode(final Code obj) {
try {
- if (methodSignatureIsConstrained)
+ if (methodSignatureIsConstrained) {
return;
-
- if (obj.getCode() == null)
+ }
+
+ if (obj.getCode() == null) {
return;
+ }
Method m = getMethod();
- if (m.getName().startsWith("access$"))
+ if (m.getName().startsWith("access$")) {
return;
-
+ }
+
methodIsStatic = m.isStatic();
parmCount = m.getArgumentTypes().length;
-
- if (parmCount == 0)
+
+ if (parmCount == 0) {
return;
-
+ }
+
parameterDefiners.clear();
usedParameters.clear();
stack.resetForMethodEntry(this);
-
+
if (buildParameterDefiners()) {
super.visitCode(obj);
reportBugs();
@@ -158,15 +162,16 @@
bugReporter.reportMissingClass(cnfe);
}
}
-
+
@Override
public void sawOpcode(final int seen) {
- if (parameterDefiners.isEmpty())
+ if (parameterDefiners.isEmpty()) {
return;
-
+ }
+
try {
stack.mergeJumps(this);
-
+
if ((seen == INVOKEVIRTUAL) || (seen == INVOKESTATIC) || (seen == INVOKESPECIAL) || (seen == INVOKEINTERFACE)) {
String methodSig = getSigConstantOperand();
Type[] parmTypes = Type.getArgumentTypes(methodSig);
@@ -184,8 +189,9 @@
OpcodeStack.Item itm = stack.getStackItem(parmTypes.length);
int reg = itm.getRegisterNumber();
int parm = reg;
- if (!methodIsStatic)
+ if (!methodIsStatic) {
parm--;
+ }
if ((parm >= 0) && (parm < parmCount)) {
removeUselessDefiners(reg);
}
@@ -199,68 +205,91 @@
OpcodeStack.Item itm = stack.getStackItem(0);
int reg = itm.getRegisterNumber();
int parm = reg;
- if (!methodIsStatic)
+ if (!methodIsStatic) {
parm--;
- if ((parm >= 0) && (parm < parmCount))
+ }
+ if ((parm >= 0) && (parm < parmCount)) {
parameterDefiners.remove(Integer.valueOf(reg));
+ }
} else {
parameterDefiners.clear();
}
-
+
if ((seen == GETFIELD) || (seen == PUTFIELD)) {
if (stack.getStackDepth() > 1) {
OpcodeStack.Item itm = stack.getStackItem(1);
int reg = itm.getRegisterNumber();
int parm = reg;
- if (!methodIsStatic)
+ if (!methodIsStatic) {
parm--;
- if ((parm >= 0) && (parm < parmCount))
+ }
+ if ((parm >= 0) && (parm < parmCount)) {
parameterDefiners.remove(Integer.valueOf(reg));
+ }
} else {
parameterDefiners.clear();
}
}
-
+
} else if ((seen == ALOAD) || ((seen >= ALOAD_0) && (seen <= ALOAD_3))) {
int reg = RegisterUtils.getALoadReg(this, seen);
int parm = reg;
- if (!methodIsStatic)
+ if (!methodIsStatic) {
parm--;
- if ((parm >= 0) && (parm < parmCount))
+ }
+ if ((parm >= 0) && (parm < parmCount)) {
usedParameters.add(Integer.valueOf(reg));
+ }
} else if (seen == AASTORE) {
- //Don't check parameters that are stored in
+ //Don't check parameters that are stored in
if (stack.getStackDepth() >= 3) {
OpcodeStack.Item itm = stack.getStackItem(0);
int reg = itm.getRegisterNumber();
int parm = reg;
- if (!methodIsStatic)
+ if (!methodIsStatic) {
parm--;
- if ((parm >= 0) && (parm < parmCount))
+ }
+ if ((parm >= 0) && (parm < parmCount)) {
parameterDefiners.remove(Integer.valueOf(reg));
+ }
} else {
parameterDefiners.clear();
}
+ } else if (seen == ARETURN) {
+ if (stack.getStackDepth() >= 1) {
+ OpcodeStack.Item item = stack.getStackItem(0);
+ int reg = item.getRegisterNumber();
+ int parm = reg;
+ if (!methodIsStatic) {
+ parm--;
+ }
+
+ if ((parm >= 0) && (parm < parmCount)) {
+ parameterDefiners.remove(Integer.valueOf(reg));
+ }
+ } else {
+ parameterDefiners.clear();
+ }
}
} finally {
stack.sawOpcode(this, seen);
}
}
-
+
private boolean methodIsSpecial(String methodName, String methodSig) {
if ("readObject".equals(methodName) && "(Ljava/io/ObjectInputStream;)V".equals(methodSig)) {
return true;
}
-
+
return false;
}
-
+
private void reportBugs() {
Iterator<Map.Entry<Integer, Map<JavaClass, List<MethodInfo>>>> it = parameterDefiners.entrySet().iterator();
while (it.hasNext()) {
Map.Entry<Integer, Map<JavaClass, List<MethodInfo>>> entry = it.next();
-
+
Integer reg = entry.getKey();
if (!usedParameters.contains(reg)) {
it.remove();
@@ -273,14 +302,16 @@
LocalVariableTable lvt = getMethod().getLocalVariableTable();
if (lvt != null) {
LocalVariable lv = lvt.getLocalVariable(reg.intValue(), 0);
- if (lv != null)
+ if (lv != null) {
name = lv.getName();
+ }
}
int parm = reg.intValue();
- if (!methodIsStatic)
+ if (!methodIsStatic) {
parm--;
+ }
parm++; //users expect 1 based parameters
-
+
String infName = definers.keySet().iterator().next().getClassName();
bugReporter.reportBug( new BugInstance(this, "OCP_OVERLY_CONCRETE_PARAMETER", NORMAL_PRIORITY)
.addClass(this)
@@ -290,33 +321,35 @@
}
}
}
-
- /**
+
+ /**
* builds a map of method information for each method of each interface that each parameter implements of this method
* @return a map by parameter id of all the method signatures that interfaces of that parameter implements
- *
+ *
* @throws ClassNotFoundException if the class can't be loaded
*/
- private boolean buildParameterDefiners()
+ private boolean buildParameterDefiners()
throws ClassNotFoundException {
-
+
Type[] parms = getMethod().getArgumentTypes();
- if (parms.length == 0)
+ if (parms.length == 0) {
return false;
-
+ }
+
boolean hasPossiblyOverlyConcreteParm = false;
for (int i = 0; i < parms.length; i++) {
String parm = parms[i].getSignature();
if (parm.startsWith("L")) {
String clsName = parm.substring(1, parm.length() - 1).replace('/', '.');
- if (clsName.startsWith("java.lang."))
+ if (clsName.startsWith("java.lang.")) {
continue;
-
+ }
+
JavaClass cls = Repository.lookupClass(clsName);
if (cls.isClass() && (!cls.isAbstract())) {
Map<JavaClass, List<MethodInfo>> definers = getClassDefiners(cls);
-
+
if (definers.size() > 0) {
parameterDefiners.put( Integer.valueOf(i + (methodIsStatic ? 0 : 1)), definers );
hasPossiblyOverlyConcreteParm = true;
@@ -324,24 +357,25 @@
}
}
}
-
+
return hasPossiblyOverlyConcreteParm;
}
-
+
/**
* returns a map of method information for each public method for each interface this class implements
* @param cls the class whose interfaces to record
- *
+ *
* @return a map of (method name)(method sig) by interface
* @throws ClassNotFoundException if unable to load the class
*/
- private Map<JavaClass, List<MethodInfo>> getClassDefiners(final JavaClass cls)
+ private Map<JavaClass, List<MethodInfo>> getClassDefiners(final JavaClass cls)
throws ClassNotFoundException {
Map<JavaClass, List<MethodInfo>> definers = new HashMap<JavaClass, List<MethodInfo>>();
-
+
for (JavaClass ci : cls.getAllInterfaces()) {
- if ("java.lang.Comparable".equals(ci.getClassName()))
+ if ("java.lang.Comparable".equals(ci.getClassName())) {
continue;
+ }
List<MethodInfo> methodInfos = getPublicMethodInfos(ci);
if (methodInfos.size() > 0) {
definers.put(ci, methodInfos);
@@ -349,10 +383,10 @@
}
return definers;
}
-
+
/**
* returns a lost of method information of all public or protected methods in this class
- *
+ *
* @param cls the class to look for methods
* @return a map of (method name)(method signature)
*/
@@ -367,15 +401,15 @@
}
return methodInfos;
}
-
+
private void removeUselessDefiners(final int reg) {
-
+
Map<JavaClass, List<MethodInfo>> definers = parameterDefiners.get(Integer.valueOf(reg));
if ((definers != null) && (definers.size() > 0)) {
String methodSig = getSigConstantOperand();
String methodName = getNameConstantOperand();
MethodInfo methodInfo = new MethodInfo(methodName, methodSig, null);
-
+
Iterator<List<MethodInfo>> it = definers.values().iterator();
while (it.hasNext()) {
boolean methodDefined = false;
@@ -396,20 +430,21 @@
break;
}
}
- if (!methodDefined)
+ if (!methodDefined) {
it.remove();
+ }
}
if (definers.isEmpty()) {
parameterDefiners.remove(Integer.valueOf(reg));
}
}
}
-
+
/**
* returns whether this exception is handled either in a try/catch or throws clause at this pc
- *
+ *
* @param ex the name of the exception
- *
+ *
* @return whether the exception is handled
*/
private boolean isExceptionHandled(String ex) {
@@ -421,8 +456,9 @@
String[] throwClauseExNames = et.getExceptionNames();
for (String throwClauseExName : throwClauseExNames) {
JavaClass throwClauseEx = Repository.lookupClass(throwClauseExName);
- if (thrownEx.instanceOf(throwClauseEx))
+ if (thrownEx.instanceOf(throwClauseEx)) {
return true;
+ }
}
}
// Next look at the try catch blocks
@@ -435,8 +471,9 @@
if (type != 0) {
String catchExName = getConstantPool().getConstantString(type, Constants.CONSTANT_Class);
JavaClass catchException = Repository.lookupClass(catchExName);
- if (thrownEx.instanceOf(catchException))
+ if (thrownEx.instanceOf(catchException)) {
return true;
+ }
}
}
}
@@ -454,66 +491,71 @@
parameterDefiners.remove(Integer.valueOf(reg));
return;
}
-
+
Map<JavaClass, List<MethodInfo>> definers = parameterDefiners.get(Integer.valueOf(reg));
if ((definers != null) && (definers.size() > 0)) {
Iterator<JavaClass> it = definers.keySet().iterator();
while (it.hasNext()) {
JavaClass definer = it.next();
- if (!definer.getClassName().equals(parmSig))
+ if (!definer.getClassName().equals(parmSig)) {
it.remove();
+ }
}
-
- if (definers.isEmpty())
+
+ if (definers.isEmpty()) {
parameterDefiners.remove(Integer.valueOf(reg));
+ }
}
}
}
-
+
public static class MethodInfo
{
private final String methodName;
private final String methodSig;
private final String[] methodExceptions;
-
+
public MethodInfo(String name, String sig, String[] excs) {
methodName = name;
methodSig = sig;
methodExceptions = excs;
}
-
+
public String getMethodName() {
return methodName;
}
-
+
public String getMethodSignature() {
return methodSig;
}
-
+
public String[] getMethodExceptions() {
return methodExceptions;
}
-
+
@Override
public int hashCode() {
return methodName.hashCode() ^ methodSig.hashCode();
}
-
+
@Override
public boolean equals(Object o) {
- if (!(o instanceof MethodInfo))
+ if (!(o instanceof MethodInfo)) {
return false;
-
+ }
+
MethodInfo that = (MethodInfo)o;
-
- if (!methodName.equals(that.methodName))
+
+ if (!methodName.equals(that.methodName)) {
return false;
- if (!methodSig.equals(that.methodSig))
+ }
+ if (!methodSig.equals(that.methodSig)) {
return false;
-
+ }
+
return true;
}
-
+
@Override
public String toString() {
return methodName + methodSig;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <dbr...@us...> - 2011-04-22 05:14:38
|
Revision: 1662
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1662&view=rev
Author: dbrosius
Date: 2011-04-22 05:14:32 +0000 (Fri, 22 Apr 2011)
Log Message:
-----------
add find to the list of risky method names
Modified Paths:
--------------
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PossiblyRedundantMethodCalls.java
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PossiblyRedundantMethodCalls.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PossiblyRedundantMethodCalls.java 2011-03-25 23:43:53 UTC (rev 1661)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PossiblyRedundantMethodCalls.java 2011-04-22 05:14:32 UTC (rev 1662)
@@ -1,17 +1,17 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
* Copyright (C) 2005-2011 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
@@ -42,7 +42,7 @@
* looks for calls of the same method on the same object when that object hasn't changed.
* This often is redundant, and the second call can be removed, or combined.
*/
-public class PossiblyRedundantMethodCalls extends BytecodeScanningDetector
+public class PossiblyRedundantMethodCalls extends BytecodeScanningDetector
{
public static final String PRMC_RISKY_FIELD_USER_KEY = "fbcontrib.PRMC.riskynames";
public static final String PRMC_RISKY_CLASS_USER_KEY = "fbcontrib.PRMC.riskyclasses";
@@ -50,18 +50,19 @@
public static final String PRMC_HIGH_METHODCALLS = "fbcontrib.PRMC.highmethodcalls";
public static final String PRMC_NORMAL_BYTECOUNT = "fbcontrib.PRMC.normalbytecount";
public static final String PRMC_NORMAL_METHODCALLS = "fbcontrib.PRMC.normalmethodcalls";
-
+
private static Set<String> riskyMethodNameContents = new HashSet<String>();
private static int highByteCountLimit = 200;
private static int highMethodCallLimit = 10;
private static int normalByteCountLimit = 50;
private static int normalMethodCallLimit = 4;
-
+
static {
riskyMethodNameContents.add("next");
riskyMethodNameContents.add("add");
riskyMethodNameContents.add("create");
riskyMethodNameContents.add("append");
+ riskyMethodNameContents.add("find");
riskyMethodNameContents.add("put");
riskyMethodNameContents.add("remove");
riskyMethodNameContents.add("read");
@@ -74,25 +75,30 @@
riskyMethodNameContents.add("close");
riskyMethodNameContents.add("copy");
riskyMethodNameContents.add("currentTimeMillis");
-
+
String userNameProp = System.getProperty(PRMC_RISKY_FIELD_USER_KEY);
if (userNameProp != null) {
String[] userNames = userNameProp.split("\\s*,\\s*");
- for (String name : userNames)
+ for (String name : userNames) {
riskyMethodNameContents.add(name);
+ }
}
Integer prop = Integer.getInteger(PRMC_HIGH_BYTECOUNT);
- if (prop != null)
+ if (prop != null) {
highByteCountLimit = prop.intValue();
+ }
prop = Integer.getInteger(PRMC_HIGH_METHODCALLS);
- if (prop != null)
+ if (prop != null) {
highMethodCallLimit = prop.intValue();
+ }
prop = Integer.getInteger(PRMC_NORMAL_BYTECOUNT);
- if (prop != null)
+ if (prop != null) {
normalByteCountLimit = prop.intValue();
+ }
prop = Integer.getInteger(PRMC_NORMAL_METHODCALLS);
- if (prop != null)
+ if (prop != null) {
normalMethodCallLimit = prop.intValue();
+ }
}
private static Set<String> riskyClassNames = new HashSet<String>();
static {
@@ -102,18 +108,19 @@
String userNameProp = System.getProperty(PRMC_RISKY_CLASS_USER_KEY);
if (userNameProp != null) {
String[] userNames = userNameProp.split("\\s*,\\s*");
- for (String name : userNames)
- riskyClassNames.add(name);
+ for (String name : userNames) {
+ riskyClassNames.add(name);
+ }
}
}
-
+
private final BugReporter bugReporter;
private OpcodeStack stack = null;
private Map<Integer, MethodCall> localMethodCalls = null;
private Map<String, MethodCall> fieldMethodCalls = null;
private Map<String, MethodCall> staticMethodCalls = null;
private Set<Integer> branchTargets = null;
-
+
/**
* constructs a PRMC detector given the reporter to report bugs on
* @param bugReporter the sync of bug reports
@@ -121,10 +128,10 @@
public PossiblyRedundantMethodCalls(BugReporter bugReporter) {
this.bugReporter = bugReporter;
}
-
+
/**
* implements the visitor to create and clear the stack, method call maps, and branch targets
- *
+ *
* @param classContext the context object of the currently visited class
*/
@Override
@@ -144,10 +151,10 @@
branchTargets = null;
}
}
-
+
/**
* implements the visitor to reset the stack, and method call maps for new method
- *
+ *
* @param obj the context object of the currently parsed code block
*/
@Override
@@ -163,11 +170,11 @@
}
super.visitCode(obj);
}
-
+
/**
* implements the visitor to look for repetitive calls to the same method on the same object
* using the same constant parameters. These methods must return a value.
- *
+ *
* @param seen the opcode of the currently parsed instruction
*/
@Override
@@ -178,7 +185,7 @@
localMethodCalls.clear();
fieldMethodCalls.clear();
}
-
+
if (((seen >= IFEQ) && (seen <= GOTO)) || ((seen >= IFNULL) && (seen <= GOTO_W))) {
branchTargets.add(Integer.valueOf(getBranchTarget()));
} else if ((seen == TABLESWITCH) || (seen == LOOKUPSWITCH)) {
@@ -202,44 +209,46 @@
for (int i = 0; i < parmCount; i++) {
OpcodeStack.Item parm = stack.getStackItem(i);
parmConstants[i] = parm.getConstant();
- if (parmConstants[i] == null)
+ if (parmConstants[i] == null) {
return;
+ }
}
-
-
+
+
MethodCall mc;
int reg = -1;
XField field = null;
-
+
if (seen == INVOKESTATIC) {
mc = staticMethodCalls.get(className);
} else {
OpcodeStack.Item obj = stack.getStackItem(parmCount);
reg = obj.getRegisterNumber();
field = obj.getXField();
-
-
+
+
if (reg >= 0) {
mc = localMethodCalls.get(Integer.valueOf(reg));
} else if (field != null) {
mc = fieldMethodCalls.get(field.getName());
- } else
+ } else {
return;
+ }
}
-
+
if (mc != null) {
if (!signature.endsWith("V") && methodName.equals(mc.getName()) && signature.equals(mc.getSignature()) && !isRiskyName(className, methodName)) {
Object[] parms = mc.getParms();
if (Arrays.equals(parms, parmConstants)) {
Statistics statistics = Statistics.getStatistics();
Statistics.MethodInfo mi = statistics.getMethodStatistics(getClassConstantOperand(), methodName, signature);
-
- bugReporter.reportBug(new BugInstance(this, "PRMC_POSSIBLY_REDUNDANT_METHOD_CALLS",
- (mi.numBytes >= highByteCountLimit || mi.numMethodCalls >= highMethodCallLimit) ?
+
+ bugReporter.reportBug(new BugInstance(this, "PRMC_POSSIBLY_REDUNDANT_METHOD_CALLS",
+ ((mi.numBytes >= highByteCountLimit) || (mi.numMethodCalls >= highMethodCallLimit)) ?
HIGH_PRIORITY :
- (mi.numBytes >= normalByteCountLimit || mi.numMethodCalls >= normalMethodCallLimit) ?
+ ((mi.numBytes >= normalByteCountLimit) || (mi.numMethodCalls >= normalMethodCallLimit)) ?
NORMAL_PRIORITY :
- (mi.numBytes == 0 || mi.numMethodCalls == 0) ?
+ ((mi.numBytes == 0) || (mi.numMethodCalls == 0)) ?
LOW_PRIORITY :
EXP_PRIORITY)
.addClass(this)
@@ -248,7 +257,7 @@
.addString(methodName + signature));
}
}
-
+
if (seen == INVOKESTATIC) {
staticMethodCalls.remove(className);
} else {
@@ -275,7 +284,7 @@
stack.sawOpcode(this, seen);
}
}
-
+
/**
* returns true if the class or method name contains a pattern that is considered likely to be this modifying
*
@@ -284,16 +293,18 @@
* @return whether the method sounds like it modifies this
*/
private boolean isRiskyName(String className, String methodName) {
- if (riskyClassNames.contains(className))
- return true;
-
+ if (riskyClassNames.contains(className)) {
+ return true;
+ }
+
for (String riskyName : riskyMethodNameContents) {
- if (methodName.indexOf(riskyName) >= 0)
+ if (methodName.indexOf(riskyName) >= 0) {
return true;
+ }
}
return false;
}
-
+
/**
* contains information about a method call
*/
@@ -302,21 +313,21 @@
private final String methodName;
private final String methodSignature;
private final Object[] methodParms;
-
+
public MethodCall(String name, String signature, Object[] parms) {
methodName = name;
methodSignature = signature;
methodParms = parms;
}
-
+
public String getName() {
return methodName;
}
-
+
public String getSignature() {
return methodSignature;
}
-
+
public Object[] getParms() {
return methodParms;
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <dbr...@us...> - 2011-03-25 23:43:59
|
Revision: 1661
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1661&view=rev
Author: dbrosius
Date: 2011-03-25 23:43:53 +0000 (Fri, 25 Mar 2011)
Log Message:
-----------
fix WOC FP when field is fetched from a non-this object of the same class
Modified Paths:
--------------
trunk/fb-contrib/samples/WOC_Sample.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/WriteOnlyCollection.java
Modified: trunk/fb-contrib/samples/WOC_Sample.java
===================================================================
--- trunk/fb-contrib/samples/WOC_Sample.java 2011-03-25 23:27:14 UTC (rev 1660)
+++ trunk/fb-contrib/samples/WOC_Sample.java 2011-03-25 23:43:53 UTC (rev 1661)
@@ -97,7 +97,7 @@
};
}
- public List<String> fpOtherClass(WOC_Sample ws)
+ public List<String> fpOtherInstance(WOC_Sample ws)
{
return ws.fpList;
}
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/WriteOnlyCollection.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/WriteOnlyCollection.java 2011-03-25 23:27:14 UTC (rev 1660)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/WriteOnlyCollection.java 2011-03-25 23:43:53 UTC (rev 1661)
@@ -98,6 +98,7 @@
private final BugReporter bugReporter;
private OpcodeStack stack;
+ private String clsSignature;
/** register to first allocation PC */
private Map<Integer, Integer> localWOCollections;
/** fieldname to field sig */
@@ -119,11 +120,12 @@
@Override
public void visitClassContext(ClassContext classContext) {
try {
+ clsSignature = "L" + classContext.getJavaClass().getClassName().replaceAll("\\.", "/") + ";";
stack = new OpcodeStack();
localWOCollections = new HashMap<Integer, Integer>();
fieldWOCollections = new HashMap<String, String>();
super.visitClassContext(classContext);
-
+
if (fieldWOCollections.size() > 0) {
String clsName = classContext.getJavaClass().getClassName();
for (Map.Entry<String, String> entry : fieldWOCollections.entrySet()) {
@@ -140,7 +142,7 @@
fieldWOCollections = null;
}
}
-
+
@Override
public void visitField(Field obj) {
if (obj.isPrivate() && !obj.isSynthetic()) {
@@ -149,7 +151,7 @@
String type = sig.substring(1, sig.length() - 1).replace('/', '.');
if (collectionClasses.contains(type)) {
fieldWOCollections.put(obj.getName(), obj.getSignature());
- }
+ }
}
}
}
@@ -199,7 +201,7 @@
break;
case INVOKEINTERFACE:
- case INVOKEVIRTUAL:
+ case INVOKEVIRTUAL: {
String sig = getSigConstantOperand();
int numParms = Type.getArgumentTypes(sig).length;
if (stack.getStackDepth() > numParms) {
@@ -218,6 +220,7 @@
}
}
processMethodParms();
+ }
break;
case INVOKESTATIC:
@@ -281,7 +284,8 @@
case GETFIELD:
if (stack.getStackDepth() > 0) {
OpcodeStack.Item item = stack.getStackItem(0);
- if (item.getRegisterNumber() == 0) {
+ String sig = item.getSignature();
+ if ((item.getRegisterNumber() == 0) || ((sig != null) && sig.equals(clsSignature))) {
XField field = getXFieldOperand();
if (field != null) {
String fieldName = field.getName();
@@ -292,7 +296,7 @@
}
}
break;
-
+
case PUTSTATIC:
if (stack.getStackDepth() > 0) {
OpcodeStack.Item item = stack.getStackItem(0);
@@ -302,7 +306,7 @@
}
}
break;
-
+
case GETSTATIC:
XField field = getXFieldOperand();
if (field != null) {
@@ -312,7 +316,7 @@
}
}
break;
-
+
case GOTO:
if (stack.getStackDepth() > 0) {
OpcodeStack.Item item = stack.getStackItem(0);
@@ -338,7 +342,7 @@
int nextPC = getNextPC();
return getCode().getCode()[nextPC] == POP;
}
-
+
private void clearUserValue(OpcodeStack.Item item) {
Object uo = item.getUserValue();
if (uo instanceof Integer) {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <dbr...@us...> - 2011-03-25 23:27:20
|
Revision: 1660
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1660&view=rev
Author: dbrosius
Date: 2011-03-25 23:27:14 +0000 (Fri, 25 Mar 2011)
Log Message:
-----------
formatting
Modified Paths:
--------------
trunk/fb-contrib/samples/BAS_Sample.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/MethodReturnsConstant.java
Modified: trunk/fb-contrib/samples/BAS_Sample.java
===================================================================
--- trunk/fb-contrib/samples/BAS_Sample.java 2011-03-25 23:26:22 UTC (rev 1659)
+++ trunk/fb-contrib/samples/BAS_Sample.java 2011-03-25 23:27:14 UTC (rev 1660)
@@ -1,10 +1,14 @@
import java.util.Calendar;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
import java.util.Set;
@SuppressWarnings("all")
public class BAS_Sample
{
+ private final Map<String, String> m = new HashMap<String, String>();
+
public void testIfScope(String s)
{
Object o = new Object();
@@ -147,5 +151,4 @@
System.out.println(delta);
}
}
-
}
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/MethodReturnsConstant.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/MethodReturnsConstant.java 2011-03-25 23:26:22 UTC (rev 1659)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/MethodReturnsConstant.java 2011-03-25 23:27:14 UTC (rev 1660)
@@ -1,17 +1,17 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
* Copyright (C) 2005-2011 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
@@ -29,12 +29,12 @@
import edu.umd.cs.findbugs.ba.ClassContext;
/**
- * looks for private methods that can only return one constant value.
+ * looks for private methods that can only return one constant value.
* either the class should not return a value, or perhaps a branch was missed.
*/
-public class MethodReturnsConstant extends BytecodeScanningDetector
+public class MethodReturnsConstant extends BytecodeScanningDetector
{
- private BugReporter bugReporter;
+ private final BugReporter bugReporter;
private OpcodeStack stack;
private Object returnConstant;
private boolean methodSuspect;
@@ -47,20 +47,20 @@
public MethodReturnsConstant(BugReporter bugReporter) {
this.bugReporter = bugReporter;
}
-
+
@Override
public void visitClassContext(ClassContext classContext) {
- try {
+ try {
stack = new OpcodeStack();
super.visitClassContext(classContext);
} finally {
stack = null;
}
}
-
+
/**
* implements the visitor to reset the stack and proceed for private methods
- *
+ *
* @param obj the context object of the currently parsed code block
*/
@Override
@@ -79,27 +79,29 @@
BugInstance bi = new BugInstance(this, "MRC_METHOD_RETURNS_CONSTANT", ((aFlags & Constants.ACC_PRIVATE) != 0) ? NORMAL_PRIORITY : LOW_PRIORITY)
.addClass(this)
.addMethod(this);
- if (returnPC >= 0)
+ if (returnPC >= 0) {
bi.addSourceLine(this, returnPC);
-
+ }
+
bi.addString(returnConstant.toString());
bugReporter.reportBug(bi);
}
}
}
-
+
/**
* implements the visitor to look for methods that return a constant
- *
+ *
* @param seen the opcode of the currently parsed instruction
*/
@Override
public void sawOpcode(int seen) {
boolean sawSBToString = false;
try {
- if (!methodSuspect)
+ if (!methodSuspect) {
return;
-
+ }
+
if ((seen >= IRETURN) && (seen <= ARETURN)) {
if (stack.getStackDepth() > 0) {
OpcodeStack.Item item = stack.getStackItem(0);
@@ -117,12 +119,12 @@
methodSuspect = false;
return;
}
-
+
returnConstant = constant;
}
} else if ((seen == GOTO) || (seen == GOTO_W)) {
if (stack.getStackDepth() > 0) {
- methodSuspect = false; //Trinaries confuse us to much, if the code has a trinary well - oh well
+ methodSuspect = false; //Trinaries confuse us too much, if the code has a trinary well - oh well
}
} else if (seen == INVOKEVIRTUAL) {
String clsName = getClassConstantOperand();
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <dbr...@us...> - 2011-03-25 23:26:28
|
Revision: 1659
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1659&view=rev
Author: dbrosius
Date: 2011-03-25 23:26:22 +0000 (Fri, 25 Mar 2011)
Log Message:
-----------
add fp to WOC
Modified Paths:
--------------
trunk/fb-contrib/samples/WOC_Sample.java
Modified: trunk/fb-contrib/samples/WOC_Sample.java
===================================================================
--- trunk/fb-contrib/samples/WOC_Sample.java 2011-03-06 21:56:49 UTC (rev 1658)
+++ trunk/fb-contrib/samples/WOC_Sample.java 2011-03-25 23:26:22 UTC (rev 1659)
@@ -1,20 +1,23 @@
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
+import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedHashSet;
import java.util.LinkedList;
+import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.Vector;
-public class WOC_Sample
+public class WOC_Sample
{
private final Set<String> memberSet = new HashSet<String>();
private Set<String> fpSet;
-
+ private final List<String> fpList = new ArrayList<String>();
+
public void testWOCSimple()
{
Set<String> s = new HashSet<String>();
@@ -24,7 +27,7 @@
System.out.println("woops");
}
}
-
+
public Map<String, String> testFPWOCReturn()
{
Map<String, String> m = new HashMap<String, String>();
@@ -33,7 +36,7 @@
fpSet = new HashSet<String>();
return m;
}
-
+
public void testFPWOCAsParm()
{
Map<String, String> m = new HashMap<String, String>();
@@ -42,7 +45,7 @@
fpSet.add("boo");
helper(0, m);
}
-
+
public void testFPWOCCopy()
{
Set<String> s = new LinkedHashSet<String>();
@@ -50,42 +53,42 @@
Set<String> c = s;
memberSet.add("fum");
}
-
+
public void testFPWOCInArray()
{
Vector<Integer> v = new Vector<Integer>();
v.addElement(Integer.valueOf(0));
Object[] o = new Object[] { v };
}
-
+
public void testFPWOCUseReturnVal()
{
LinkedList<String> l = new LinkedList<String>();
l.add("Foo");
l.add("Bar");
-
+
if (l.remove("Foo"))
{
System.out.println("Dont' report");
}
}
-
+
public Set<String> testFPTrinary(boolean b)
{
Set<String> s = new HashSet<String>();
s.add("foo");
s.add("bar");
-
+
return b ? s : Collections.<String>emptySet();
}
-
+
private void helper(int i, Map<String, String> x)
- {
+ {
}
-
+
public void testFPInnerClass(final Set<String> data)
{
- ActionListener al = new ActionListener()
+ ActionListener al = new ActionListener()
{
public void actionPerformed(ActionEvent ae)
{
@@ -93,4 +96,9 @@
}
};
}
+
+ public List<String> fpOtherClass(WOC_Sample ws)
+ {
+ return ws.fpList;
+ }
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <dbr...@us...> - 2011-03-06 21:56:55
|
Revision: 1658
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1658&view=rev
Author: dbrosius
Date: 2011-03-06 21:56:49 +0000 (Sun, 06 Mar 2011)
Log Message:
-----------
rule out ObjectInput as well
Modified Paths:
--------------
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BloatedAssignmentScope.java
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BloatedAssignmentScope.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BloatedAssignmentScope.java 2011-03-06 16:59:29 UTC (rev 1657)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BloatedAssignmentScope.java 2011-03-06 21:56:49 UTC (rev 1658)
@@ -47,9 +47,13 @@
*/
public class BloatedAssignmentScope extends BytecodeScanningDetector
{
- private static final Set<String> dangerousAssignmentSources = new HashSet<String>();
+ private static final Set<String> dangerousAssignmentClassSources = new HashSet<String>();
+ private static final Set<String> dangerousAssignmentMethodSources = new HashSet<String>();
+
static {
- dangerousAssignmentSources.add("java/lang/System.currentTimeMillis()J");
+ dangerousAssignmentClassSources.add("java/io/InputStream");
+ dangerousAssignmentClassSources.add("java/io/ObjectInput");
+ dangerousAssignmentMethodSources.add("java/lang/System.currentTimeMillis()J");
}
BugReporter bugReporter;
@@ -798,8 +802,15 @@
}
public boolean isRiskyMethodCall() {
- String key = getClassConstantOperand() + "." + getNameConstantOperand() + getSigConstantOperand();
- return dangerousAssignmentSources.contains(key);
+
+ String clsName =getClassConstantOperand();
+
+ if (dangerousAssignmentClassSources.contains(clsName)) {
+ return true;
+ }
+
+ String key = clsName + "." + getNameConstantOperand() + getSigConstantOperand();
+ return dangerousAssignmentMethodSources.contains(key);
}
class UserObject {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <dbr...@us...> - 2011-03-06 16:59:36
|
Revision: 1657
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1657&view=rev
Author: dbrosius
Date: 2011-03-06 16:59:29 +0000 (Sun, 06 Mar 2011)
Log Message:
-----------
add ability to ignore BAS from method calls that are risky
Modified Paths:
--------------
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BloatedAssignmentScope.java
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BloatedAssignmentScope.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BloatedAssignmentScope.java 2011-03-06 16:36:11 UTC (rev 1656)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BloatedAssignmentScope.java 2011-03-06 16:59:29 UTC (rev 1657)
@@ -47,6 +47,11 @@
*/
public class BloatedAssignmentScope extends BytecodeScanningDetector
{
+ private static final Set<String> dangerousAssignmentSources = new HashSet<String>();
+ static {
+ dangerousAssignmentSources.add("java/lang/System.currentTimeMillis()J");
+ }
+
BugReporter bugReporter;
private OpcodeStack stack;
private Set<Integer> ignoreRegs;
@@ -145,7 +150,7 @@
*/
@Override
public void sawOpcode(int seen) {
- Comparable<?> caller = null;
+ UserObject uo = null;
try {
if ((seen == ASTORE)
|| (seen == ISTORE)
@@ -160,6 +165,7 @@
int reg = RegisterUtils.getStoreReg(this, seen);
Integer iReg = Integer.valueOf(reg);
int pc = getPC();
+
if (catchHandlers.contains(Integer.valueOf(pc)))
{
ignoreRegs.add(iReg);
@@ -176,14 +182,19 @@
if (!ignoreRegs.contains(iReg)) {
ScopeBlock sb = findScopeBlock(rootScopeBlock, pc);
if (sb != null) {
- Object assoc = null;
+ UserObject assoc = null;
if (stack.getStackDepth() > 0) {
- assoc = stack.getStackItem(0).getUserValue();
+ assoc = (UserObject)stack.getStackItem(0).getUserValue();
}
- sb.addStore(reg, pc, assoc);
- if (sawDup)
- {
- sb.addLoad(reg, pc);
+
+ if ((assoc != null) && assoc.isRisky) {
+ ignoreRegs.add(iReg);
+ } else {
+ sb.addStore(reg, pc, assoc);
+ if (sawDup)
+ {
+ sb.addLoad(reg, pc);
+ }
}
}
else
@@ -332,15 +343,19 @@
dontReport = true;
}
- caller = getCallingObject();
+ uo = new UserObject();
+ uo.isRisky = isRiskyMethodCall();
+ uo.caller = getCallingObject();
- if (caller != null) {
+ if (uo.caller != null) {
ScopeBlock sb = findScopeBlock(rootScopeBlock, getPC());
if (sb != null) {
- sb.removeByAssoc(caller);
+ sb.removeByAssoc(uo.caller);
}
}
-
+ } else if ((seen == INVOKESTATIC) || (seen == INVOKESPECIAL)) {
+ uo = new UserObject();
+ uo.isRisky = isRiskyMethodCall();
} else if (seen == MONITORENTER) {
monitorSyncPCs.add(Integer.valueOf(getPC()));
} else if (seen == MONITOREXIT) {
@@ -354,10 +369,10 @@
sawNull = (seen == ACONST_NULL);
} finally {
stack.sawOpcode(this, seen);
- if (caller != null) {
+ if (uo != null) {
if (stack.getStackDepth() > 0) {
OpcodeStack.Item item = stack.getStackItem(0);
- item.setUserValue(caller);
+ item.setUserValue(uo);
}
}
}
@@ -462,7 +477,7 @@
private boolean isGoto;
private Map<Integer, Integer> loads;
private Map<Integer, Integer> stores;
- private Map<Object, Integer> assocs;
+ private Map<UserObject, Integer> assocs;
private List<ScopeBlock> children;
/** construts a new scope block
@@ -574,7 +589,7 @@
* @param reg the register that was stored
* @param pc the instruction that did the store
*/
- public void addStore(int reg, int pc, Object assocObject) {
+ public void addStore(int reg, int pc, UserObject assocObject) {
if (stores == null)
{
stores = new HashMap<Integer, Integer>();
@@ -583,7 +598,7 @@
stores.put(Integer.valueOf(reg), Integer.valueOf(pc));
if (assocs == null)
{
- assocs = new HashMap<Object, Integer>();
+ assocs = new HashMap<UserObject, Integer>();
}
assocs.put(assocObject, Integer.valueOf(reg));
}
@@ -781,4 +796,14 @@
}
}
}
+
+ public boolean isRiskyMethodCall() {
+ String key = getClassConstantOperand() + "." + getNameConstantOperand() + getSigConstantOperand();
+ return dangerousAssignmentSources.contains(key);
+ }
+
+ class UserObject {
+ Comparable<?> caller;
+ boolean isRisky;
+ }
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <dbr...@us...> - 2011-03-06 16:36:17
|
Revision: 1656
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1656&view=rev
Author: dbrosius
Date: 2011-03-06 16:36:11 +0000 (Sun, 06 Mar 2011)
Log Message:
-----------
LSTORE goes up to 3
Modified Paths:
--------------
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BloatedAssignmentScope.java
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BloatedAssignmentScope.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BloatedAssignmentScope.java 2011-03-06 16:30:15 UTC (rev 1655)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BloatedAssignmentScope.java 2011-03-06 16:36:11 UTC (rev 1656)
@@ -154,7 +154,7 @@
|| (seen == DSTORE)
|| ((seen >= ASTORE_0) && (seen <= ASTORE_3))
|| ((seen >= ISTORE_0) && (seen <= ISTORE_3))
- || ((seen >= LSTORE_0) && (seen <= LSTORE_1))
+ || ((seen >= LSTORE_0) && (seen <= LSTORE_3))
|| ((seen >= FSTORE_0) && (seen <= FSTORE_1))
|| ((seen >= DSTORE_0) && (seen <= DSTORE_1))) {
int reg = RegisterUtils.getStoreReg(this, seen);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <dbr...@us...> - 2011-03-06 16:30:24
|
Revision: 1655
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1655&view=rev
Author: dbrosius
Date: 2011-03-06 16:30:15 +0000 (Sun, 06 Mar 2011)
Log Message:
-----------
LLOAD goes to 3
Modified Paths:
--------------
trunk/fb-contrib/.classpath
trunk/fb-contrib/etc/findbugs.xml
trunk/fb-contrib/samples/BAS_Sample.java
trunk/fb-contrib/samples/samples-bugs.xml
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BloatedAssignmentScope.java
Modified: trunk/fb-contrib/.classpath
===================================================================
--- trunk/fb-contrib/.classpath 2011-03-01 07:07:16 UTC (rev 1654)
+++ trunk/fb-contrib/.classpath 2011-03-06 16:30:15 UTC (rev 1655)
@@ -15,7 +15,7 @@
<classpathentry kind="lib" path="lib/jsr305.jar"/>
<classpathentry kind="lib" path="samples/lib/jsp-api.jar"/>
<classpathentry kind="lib" path="samples/lib/junit.jar"/>
- <classpathentry kind="lib" path="samples/lib/log4j.jar"/>
+ <classpathentry kind="lib" path="samples/lib/log4j.jar" sourcepath="/home/dave/.m2/repository/log4j/log4j/1.2.15/log4j-1.2.15-sources.jar"/>
<classpathentry kind="lib" path="samples/lib/servlet-api.jar"/>
<classpathentry combineaccessrules="false" kind="src" path="/findbugs"/>
<classpathentry kind="output" path="classes"/>
Modified: trunk/fb-contrib/etc/findbugs.xml
===================================================================
--- trunk/fb-contrib/etc/findbugs.xml 2011-03-01 07:07:16 UTC (rev 1654)
+++ trunk/fb-contrib/etc/findbugs.xml 2011-03-06 16:30:15 UTC (rev 1655)
@@ -133,9 +133,9 @@
<Detector class="com.mebigfatguy.fbcontrib.detect.SillynessPotPourri" speed="fast"
reports="SPP_NEGATIVE_BITSET_ITEM,SPP_INTERN_ON_CONSTANT,SPP_NO_CHAR_SB_CTOR,SPP_USE_MATH_CONSTANT,SPP_STUTTERED_ASSIGNMENT,SPP_USE_ISNAN,SPP_USE_BIGDECIMAL_STRING_CTOR,SPP_STRINGBUFFER_WITH_EMPTY_STRING,SPP_EQUALS_ON_ENUM,SPP_INVALID_BOOLEAN_NULL_CHECK,SPP_USE_CHARAT,SPP_USELESS_TRINARY,SPP_SUSPECT_STRING_TEST,SPP_USE_STRINGBUILDER_LENGTH,SPP_INVALID_CALENDAR_COMPARE,SPP_USE_CONTAINSKEY,SPP_USE_ISEMPTY,SPP_USE_GETPROPERTY,SPP_USELESS_CASING,SPP_NON_ARRAY_PARM,SPP_EMPTY_CASING,SPP_TEMPORARY_TRIM" />
-<!--
+
<Detector class="com.mebigfatguy.fbcontrib.detect.BloatedAssignmentScope" speed="fast" reports="BAS_BLOATED_ASSIGNMENT_SCOPE" hidden="true" />
--->
+
<Detector class="com.mebigfatguy.fbcontrib.detect.SpoiledChildInterfaceImplementor" speed="fast" reports="SCII_SPOILED_CHILD_INTERFACE_IMPLEMENTOR" />
<Detector class="com.mebigfatguy.fbcontrib.detect.DeletingWhileIterating" speed="fast" reports="DWI_DELETING_WHILE_ITERATING,DWI_MODIFYING_WHILE_ITERATING" />
Modified: trunk/fb-contrib/samples/BAS_Sample.java
===================================================================
--- trunk/fb-contrib/samples/BAS_Sample.java 2011-03-01 07:07:16 UTC (rev 1654)
+++ trunk/fb-contrib/samples/BAS_Sample.java 2011-03-06 16:30:15 UTC (rev 1655)
@@ -3,7 +3,7 @@
import java.util.Set;
@SuppressWarnings("all")
-public class BAS_Sample
+public class BAS_Sample
{
public void testIfScope(String s)
{
@@ -13,7 +13,7 @@
s = o.toString();
}
}
-
+
public String testFPForScope(String s)
{
Object o = new Object();
@@ -24,7 +24,7 @@
}
return s;
}
-
+
public String testFP2Scopes(String s)
{
Object o = new Object();
@@ -36,10 +36,10 @@
{
s = o.toString();
}
-
+
return s;
}
-
+
public String test2InnerScopes(String s)
{
Object o = new Object();
@@ -54,10 +54,10 @@
s = o.toString();
}
}
-
+
return s;
}
-
+
public String testFPLoopCond(List<String> in)
{
StringBuilder sb = new StringBuilder();
@@ -67,30 +67,30 @@
}
return sb.toString();
}
-
+
public List<String> getList()
{
return null;
}
-
+
public String testSwitch(int a)
{
String v = "Test";
-
+
switch (a)
{
case 1:
v = "Testa";
break;
-
+
case 2:
v = "Tesseract";
break;
-
+
case 3:
v = "Testy";
break;
-
+
default:
v = "Rossa";
break;
@@ -98,45 +98,54 @@
return null;
}
-
+
public void testFPSync(Set<String> a, Set<String> b)
{
String c, d;
-
+
synchronized(this)
{
c = a.iterator().next();
d = b.iterator().next();
}
-
+
if (d.length() > 0)
{
d = c;
}
}
-
+
public int testFPObjChange(Calendar c, boolean b)
{
int hour = c.get(Calendar.HOUR_OF_DAY);
c.set(2000, Calendar.JANUARY, 1);
-
+
if (b)
{
return hour;
}
-
+
return 0;
}
-
+
public void testFPSrcOverwrite(int src, boolean b)
{
int d = src;
src = 0;
-
+
if (b)
{
System.out.println(d);
}
}
+ public void testFPRiskies1(boolean b) {
+ long start = System.currentTimeMillis();
+
+ if (b) {
+ long delta = System.currentTimeMillis() - start;
+ System.out.println(delta);
+ }
+ }
+
}
Modified: trunk/fb-contrib/samples/samples-bugs.xml
===================================================================
--- trunk/fb-contrib/samples/samples-bugs.xml 2011-03-01 07:07:16 UTC (rev 1654)
+++ trunk/fb-contrib/samples/samples-bugs.xml 2011-03-06 16:30:15 UTC (rev 1655)
@@ -1,12 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<BugCollection version="1.2.0-rc1" sequence="0" timestamp="-1" analysisTimestamp="1173623337203" release="">
- <Project filename="O:\fb-contrib\samples\samples.fb">
- <Jar>O:\fb-contrib\samples</Jar>
- <AuxClasspathEntry>O:\fb-contrib\samples\lib\jsp-api.jar</AuxClasspathEntry>
- <SrcDir>O:\fb-contrib\samples</SrcDir>
+ <Project projectName="">
+ <Jar>/home/dave/dev/fb-contrib/samples/O:\fb-contrib\samples</Jar>
+ <AuxClasspathEntry>/home/dave/dev/fb-contrib/samples/O:\fb-contrib\samples\lib\jsp-api.jar</AuxClasspathEntry>
+ <SrcDir>/home/dave/dev/fb-contrib/samples/O:\fb-contrib\samples</SrcDir>
+ <WrkDir>/home/dave/dev/fb-contrib/samples</WrkDir>
+ <SuppressionFilter>
+ <LastVersion value="-1" relOp="NEQ"/>
+ </SuppressionFilter>
+ <Cloud id="1"></Cloud>
</Project>
- <BugInstance type="ABC_ARRAY_BASED_COLLECTIONS" priority="2" abbrev="ABC" category="CORRECTNESS">
+ <CloudDetails online="false"/>
+ <BugInstance type="ABC_ARRAY_BASED_COLLECTIONS" priority="2" abbrev="ABC" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="ABC_Sample">
<SourceLine classname="ABC_Sample" sourcefile="ABC_Sample.java" sourcepath="ABC_Sample.java"/>
</Class>
@@ -15,7 +21,7 @@
</Method>
<SourceLine classname="ABC_Sample" start="29" end="29" startBytecode="2" endBytecode="2" sourcefile="ABC_Sample.java" sourcepath="ABC_Sample.java"/>
</BugInstance>
- <BugInstance type="ABC_ARRAY_BASED_COLLECTIONS" priority="2" abbrev="ABC" category="CORRECTNESS">
+ <BugInstance type="ABC_ARRAY_BASED_COLLECTIONS" priority="2" abbrev="ABC" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="ABC_Sample">
<SourceLine classname="ABC_Sample" sourcefile="ABC_Sample.java" sourcepath="ABC_Sample.java"/>
</Class>
@@ -24,7 +30,7 @@
</Method>
<SourceLine classname="ABC_Sample" start="16" end="16" startBytecode="11" endBytecode="11" sourcefile="ABC_Sample.java" sourcepath="ABC_Sample.java"/>
</BugInstance>
- <BugInstance type="ABC_ARRAY_BASED_COLLECTIONS" priority="2" abbrev="ABC" category="CORRECTNESS">
+ <BugInstance type="ABC_ARRAY_BASED_COLLECTIONS" priority="2" abbrev="ABC" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="ABC_Sample">
<SourceLine classname="ABC_Sample" sourcefile="ABC_Sample.java" sourcepath="ABC_Sample.java"/>
</Class>
@@ -33,12 +39,12 @@
</Method>
<SourceLine classname="ABC_Sample" start="23" end="23" startBytecode="10" endBytecode="10" sourcefile="ABC_Sample.java" sourcepath="ABC_Sample.java"/>
</BugInstance>
- <BugInstance type="SIC_INNER_SHOULD_BE_STATIC_ANON" priority="3" abbrev="SIC" category="PERFORMANCE">
+ <BugInstance type="SIC_INNER_SHOULD_BE_STATIC_ANON" priority="3" abbrev="SIC" category="PERFORMANCE" firstSeen="12/25/10 2:59 PM">
<Class classname="ABC_Sample$UseComparator$1">
<SourceLine classname="ABC_Sample$UseComparator$1" sourcefile="ABC_Sample.java" sourcepath="ABC_Sample.java"/>
</Class>
</BugInstance>
- <BugInstance type="ACEM_ABSTRACT_CLASS_EMPTY_METHODS" priority="2" abbrev="ACEM" category="STYLE">
+ <BugInstance type="ACEM_ABSTRACT_CLASS_EMPTY_METHODS" priority="2" abbrev="ACEM" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="ACEM_Sample">
<SourceLine classname="ACEM_Sample" sourcefile="ACEM_Sample.java" sourcepath="ACEM_Sample.java"/>
</Class>
@@ -47,7 +53,7 @@
</Method>
<SourceLine classname="ACEM_Sample" start="7" end="7" startBytecode="0" endBytecode="0" sourcefile="ACEM_Sample.java" sourcepath="ACEM_Sample.java"/>
</BugInstance>
- <BugInstance type="ACEM_ABSTRACT_CLASS_EMPTY_METHODS" priority="2" abbrev="ACEM" category="STYLE">
+ <BugInstance type="ACEM_ABSTRACT_CLASS_EMPTY_METHODS" priority="2" abbrev="ACEM" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="ACEM_Sample">
<SourceLine classname="ACEM_Sample" sourcefile="ACEM_Sample.java" sourcepath="ACEM_Sample.java"/>
</Class>
@@ -56,7 +62,7 @@
</Method>
<SourceLine classname="ACEM_Sample" start="11" end="11" startBytecode="9" endBytecode="9" sourcefile="ACEM_Sample.java" sourcepath="ACEM_Sample.java"/>
</BugInstance>
- <BugInstance type="AFBR_ABNORMAL_FINALLY_BLOCK_RETURN" priority="2" abbrev="AFBR" category="CORRECTNESS">
+ <BugInstance type="AFBR_ABNORMAL_FINALLY_BLOCK_RETURN" priority="2" abbrev="AFBR" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="AFBR_Sample">
<SourceLine classname="AFBR_Sample" sourcefile="AFBR_Sample.java" sourcepath="AFBR_Sample.java"/>
</Class>
@@ -65,7 +71,7 @@
</Method>
<SourceLine classname="AFBR_Sample" start="17" end="17" startBytecode="19" endBytecode="19" sourcefile="AFBR_Sample.java" sourcepath="AFBR_Sample.java"/>
</BugInstance>
- <BugInstance type="AFBR_ABNORMAL_FINALLY_BLOCK_RETURN" priority="2" abbrev="AFBR" category="CORRECTNESS">
+ <BugInstance type="AFBR_ABNORMAL_FINALLY_BLOCK_RETURN" priority="2" abbrev="AFBR" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="AFBR_Sample">
<SourceLine classname="AFBR_Sample" sourcefile="AFBR_Sample.java" sourcepath="AFBR_Sample.java"/>
</Class>
@@ -74,7 +80,7 @@
</Method>
<SourceLine classname="AFBR_Sample" start="31" end="31" startBytecode="18" endBytecode="18" sourcefile="AFBR_Sample.java" sourcepath="AFBR_Sample.java"/>
</BugInstance>
- <BugInstance type="AFBR_ABNORMAL_FINALLY_BLOCK_RETURN" priority="2" abbrev="AFBR" category="CORRECTNESS">
+ <BugInstance type="AFBR_ABNORMAL_FINALLY_BLOCK_RETURN" priority="2" abbrev="AFBR" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="AFBR_Sample">
<SourceLine classname="AFBR_Sample" sourcefile="AFBR_Sample.java" sourcepath="AFBR_Sample.java"/>
</Class>
@@ -83,7 +89,7 @@
</Method>
<SourceLine classname="AFBR_Sample" start="43" end="43" startBytecode="18" endBytecode="18" sourcefile="AFBR_Sample.java" sourcepath="AFBR_Sample.java"/>
</BugInstance>
- <BugInstance type="AFBR_ABNORMAL_FINALLY_BLOCK_RETURN" priority="2" abbrev="AFBR" category="CORRECTNESS">
+ <BugInstance type="AFBR_ABNORMAL_FINALLY_BLOCK_RETURN" priority="2" abbrev="AFBR" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="AFBR_Sample">
<SourceLine classname="AFBR_Sample" sourcefile="AFBR_Sample.java" sourcepath="AFBR_Sample.java"/>
</Class>
@@ -92,7 +98,7 @@
</Method>
<SourceLine classname="AFBR_Sample" start="59" end="59" startBytecode="15" endBytecode="15" sourcefile="AFBR_Sample.java" sourcepath="AFBR_Sample.java"/>
</BugInstance>
- <BugInstance type="AFBR_ABNORMAL_FINALLY_BLOCK_RETURN" priority="3" abbrev="AFBR" category="CORRECTNESS">
+ <BugInstance type="AFBR_ABNORMAL_FINALLY_BLOCK_RETURN" priority="3" abbrev="AFBR" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="AFBR_Sample">
<SourceLine classname="AFBR_Sample" sourcefile="AFBR_Sample.java" sourcepath="AFBR_Sample.java"/>
</Class>
@@ -101,7 +107,7 @@
</Method>
<SourceLine classname="AFBR_Sample" start="78" end="78" startBytecode="50" endBytecode="50" sourcefile="AFBR_Sample.java" sourcepath="AFBR_Sample.java"/>
</BugInstance>
- <BugInstance type="AOM_ABSTRACT_OVERRIDDEN_METHOD" priority="2" abbrev="AOM" category="CORRECTNESS">
+ <BugInstance type="AOM_ABSTRACT_OVERRIDDEN_METHOD" priority="2" abbrev="AOM" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="AOM_Sample">
<SourceLine classname="AOM_Sample" sourcefile="AOM_Sample.java" sourcepath="AOM_Sample.java"/>
</Class>
@@ -109,7 +115,7 @@
<SourceLine classname="AOM_Sample" startBytecode="0" sourcefile="AOM_Sample.java" sourcepath="AOM_Sample.java"/>
</Method>
</BugInstance>
- <BugInstance type="AWCBR_ARRAY_WRAPPED_CALL_BY_REFERENCE" priority="2" abbrev="AWCBR" category="STYLE">
+ <BugInstance type="AWCBR_ARRAY_WRAPPED_CALL_BY_REFERENCE" priority="2" abbrev="AWCBR" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="AWCBR_Sample">
<SourceLine classname="AWCBR_Sample" sourcefile="AWCBR_Sample.java" sourcepath="AWCBR_Sample.java"/>
</Class>
@@ -118,7 +124,7 @@
</Method>
<SourceLine classname="AWCBR_Sample" start="22" end="22" startBytecode="16" endBytecode="16" sourcefile="AWCBR_Sample.java" sourcepath="AWCBR_Sample.java"/>
</BugInstance>
- <BugInstance type="AWCBR_ARRAY_WRAPPED_CALL_BY_REFERENCE" priority="2" abbrev="AWCBR" category="STYLE">
+ <BugInstance type="AWCBR_ARRAY_WRAPPED_CALL_BY_REFERENCE" priority="2" abbrev="AWCBR" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="AWCBR_Sample">
<SourceLine classname="AWCBR_Sample" sourcefile="AWCBR_Sample.java" sourcepath="AWCBR_Sample.java"/>
</Class>
@@ -127,7 +133,7 @@
</Method>
<SourceLine classname="AWCBR_Sample" start="14" end="14" startBytecode="16" endBytecode="16" sourcefile="AWCBR_Sample.java" sourcepath="AWCBR_Sample.java"/>
</BugInstance>
- <BugInstance type="USBR_UNNECESSARY_STORE_BEFORE_RETURN" priority="2" abbrev="USBR" category="STYLE">
+ <BugInstance type="USBR_UNNECESSARY_STORE_BEFORE_RETURN" priority="2" abbrev="USBR" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="AWCBR_Sample">
<SourceLine classname="AWCBR_Sample" sourcefile="AWCBR_Sample.java" sourcepath="AWCBR_Sample.java"/>
</Class>
@@ -136,7 +142,7 @@
</Method>
<SourceLine classname="AWCBR_Sample" start="31" end="31" startBytecode="13" endBytecode="13" sourcefile="AWCBR_Sample.java" sourcepath="AWCBR_Sample.java"/>
</BugInstance>
- <BugInstance type="USBR_UNNECESSARY_STORE_BEFORE_RETURN" priority="2" abbrev="USBR" category="STYLE">
+ <BugInstance type="USBR_UNNECESSARY_STORE_BEFORE_RETURN" priority="2" abbrev="USBR" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="AWCBR_Sample">
<SourceLine classname="AWCBR_Sample" sourcefile="AWCBR_Sample.java" sourcepath="AWCBR_Sample.java"/>
</Class>
@@ -145,7 +151,7 @@
</Method>
<SourceLine classname="AWCBR_Sample" start="23" end="23" startBytecode="18" endBytecode="18" sourcefile="AWCBR_Sample.java" sourcepath="AWCBR_Sample.java"/>
</BugInstance>
- <BugInstance type="USBR_UNNECESSARY_STORE_BEFORE_RETURN" priority="2" abbrev="USBR" category="STYLE">
+ <BugInstance type="USBR_UNNECESSARY_STORE_BEFORE_RETURN" priority="2" abbrev="USBR" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="AWCBR_Sample">
<SourceLine classname="AWCBR_Sample" sourcefile="AWCBR_Sample.java" sourcepath="AWCBR_Sample.java"/>
</Class>
@@ -154,7 +160,7 @@
</Method>
<SourceLine classname="AWCBR_Sample" start="15" end="15" startBytecode="18" endBytecode="18" sourcefile="AWCBR_Sample.java" sourcepath="AWCBR_Sample.java"/>
</BugInstance>
- <BugInstance type="BAS_BLOATED_ASSIGNMENT_SCOPE" priority="2" abbrev="BAS" category="PERFORMANCE">
+ <BugInstance type="BAS_BLOATED_ASSIGNMENT_SCOPE" priority="2" abbrev="BAS" category="PERFORMANCE" firstSeen="12/25/10 2:59 PM">
<Class classname="BAS_Sample">
<SourceLine classname="BAS_Sample" sourcefile="BAS_Sample.java" sourcepath="BAS_Sample.java"/>
</Class>
@@ -163,7 +169,7 @@
</Method>
<SourceLine classname="BAS_Sample" start="7" end="7" startBytecode="7" endBytecode="7" sourcefile="BAS_Sample.java" sourcepath="BAS_Sample.java"/>
</BugInstance>
- <BugInstance type="DLS_DEAD_LOCAL_STORE" priority="2" abbrev="DLS" category="STYLE">
+ <BugInstance type="DLS_DEAD_LOCAL_STORE" priority="2" abbrev="DLS" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="BAS_Sample">
<SourceLine classname="BAS_Sample" sourcefile="BAS_Sample.java" sourcepath="BAS_Sample.java"/>
</Class>
@@ -173,7 +179,7 @@
<LocalVariable name="o" register="2" pc="8" role="LOCAL_VARIABLE_NAMED"/>
<SourceLine classname="BAS_Sample" start="16" end="16" startBytecode="7" endBytecode="7" sourcefile="BAS_Sample.java" sourcepath="BAS_Sample.java"/>
</BugInstance>
- <BugInstance type="DLS_DEAD_LOCAL_STORE" priority="2" abbrev="DLS" category="STYLE">
+ <BugInstance type="DLS_DEAD_LOCAL_STORE" priority="2" abbrev="DLS" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="BAS_Sample">
<SourceLine classname="BAS_Sample" sourcefile="BAS_Sample.java" sourcepath="BAS_Sample.java"/>
</Class>
@@ -183,7 +189,7 @@
<LocalVariable name="s" register="1" pc="22" role="LOCAL_VARIABLE_NAMED"/>
<SourceLine classname="BAS_Sample" start="10" end="10" startBytecode="21" endBytecode="21" sourcefile="BAS_Sample.java" sourcepath="BAS_Sample.java"/>
</BugInstance>
- <BugInstance type="DLS_DEAD_LOCAL_STORE" priority="3" abbrev="DLS" category="STYLE">
+ <BugInstance type="DLS_DEAD_LOCAL_STORE" priority="3" abbrev="DLS" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="BAS_Sample">
<SourceLine classname="BAS_Sample" sourcefile="BAS_Sample.java" sourcepath="BAS_Sample.java"/>
</Class>
@@ -193,7 +199,7 @@
<LocalVariable name="o" register="2" pc="22" role="LOCAL_VARIABLE_NAMED"/>
<SourceLine classname="BAS_Sample" start="19" end="19" startBytecode="21" endBytecode="21" sourcefile="BAS_Sample.java" sourcepath="BAS_Sample.java"/>
</BugInstance>
- <BugInstance type="LSC_LITERAL_STRING_COMPARISON" priority="3" abbrev="LSC" category="STYLE">
+ <BugInstance type="LSC_LITERAL_STRING_COMPARISON" priority="3" abbrev="LSC" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="BAS_Sample">
<SourceLine classname="BAS_Sample" sourcefile="BAS_Sample.java" sourcepath="BAS_Sample.java"/>
</Class>
@@ -202,7 +208,7 @@
</Method>
<SourceLine classname="BAS_Sample" start="41" end="41" startBytecode="15" endBytecode="15" sourcefile="BAS_Sample.java" sourcepath="BAS_Sample.java"/>
</BugInstance>
- <BugInstance type="LSC_LITERAL_STRING_COMPARISON" priority="3" abbrev="LSC" category="STYLE">
+ <BugInstance type="LSC_LITERAL_STRING_COMPARISON" priority="3" abbrev="LSC" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="BAS_Sample">
<SourceLine classname="BAS_Sample" sourcefile="BAS_Sample.java" sourcepath="BAS_Sample.java"/>
</Class>
@@ -211,7 +217,7 @@
</Method>
<SourceLine classname="BAS_Sample" start="43" end="43" startBytecode="32" endBytecode="32" sourcefile="BAS_Sample.java" sourcepath="BAS_Sample.java"/>
</BugInstance>
- <BugInstance type="LSC_LITERAL_STRING_COMPARISON" priority="3" abbrev="LSC" category="STYLE">
+ <BugInstance type="LSC_LITERAL_STRING_COMPARISON" priority="3" abbrev="LSC" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="BAS_Sample">
<SourceLine classname="BAS_Sample" sourcefile="BAS_Sample.java" sourcepath="BAS_Sample.java"/>
</Class>
@@ -220,7 +226,7 @@
</Method>
<SourceLine classname="BAS_Sample" start="28" end="28" startBytecode="11" endBytecode="11" sourcefile="BAS_Sample.java" sourcepath="BAS_Sample.java"/>
</BugInstance>
- <BugInstance type="LSC_LITERAL_STRING_COMPARISON" priority="3" abbrev="LSC" category="STYLE">
+ <BugInstance type="LSC_LITERAL_STRING_COMPARISON" priority="3" abbrev="LSC" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="BAS_Sample">
<SourceLine classname="BAS_Sample" sourcefile="BAS_Sample.java" sourcepath="BAS_Sample.java"/>
</Class>
@@ -229,7 +235,7 @@
</Method>
<SourceLine classname="BAS_Sample" start="30" end="30" startBytecode="28" endBytecode="28" sourcefile="BAS_Sample.java" sourcepath="BAS_Sample.java"/>
</BugInstance>
- <BugInstance type="LSC_LITERAL_STRING_COMPARISON" priority="3" abbrev="LSC" category="STYLE">
+ <BugInstance type="LSC_LITERAL_STRING_COMPARISON" priority="3" abbrev="LSC" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="BAS_Sample">
<SourceLine classname="BAS_Sample" sourcefile="BAS_Sample.java" sourcepath="BAS_Sample.java"/>
</Class>
@@ -238,7 +244,7 @@
</Method>
<SourceLine classname="BAS_Sample" start="8" end="8" startBytecode="11" endBytecode="11" sourcefile="BAS_Sample.java" sourcepath="BAS_Sample.java"/>
</BugInstance>
- <BugInstance type="DLS_DEAD_LOCAL_STORE" priority="3" abbrev="DLS" category="STYLE">
+ <BugInstance type="DLS_DEAD_LOCAL_STORE" priority="3" abbrev="DLS" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="BSB_Sample">
<SourceLine classname="BSB_Sample" sourcefile="BSB_Sample.java" sourcepath="BSB_Sample.java"/>
</Class>
@@ -248,7 +254,7 @@
<LocalVariable name="?" register="5" pc="55" role="LOCAL_VARIABLE_UNKNOWN"/>
<SourceLine classname="BSB_Sample" start="74" end="74" startBytecode="55" endBytecode="55" sourcefile="BSB_Sample.java" sourcepath="BSB_Sample.java"/>
</BugInstance>
- <BugInstance type="LSYC_LOCAL_SYNCHRONIZED_COLLECTION" priority="1" abbrev="LSYC" category="CORRECTNESS">
+ <BugInstance type="LSYC_LOCAL_SYNCHRONIZED_COLLECTION" priority="1" abbrev="LSYC" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="BSB_Sample">
<SourceLine classname="BSB_Sample" sourcefile="BSB_Sample.java" sourcepath="BSB_Sample.java"/>
</Class>
@@ -257,7 +263,7 @@
</Method>
<SourceLine classname="BSB_Sample" start="42" end="42" startBytecode="19" endBytecode="19" sourcefile="BSB_Sample.java" sourcepath="BSB_Sample.java"/>
</BugInstance>
- <BugInstance type="LSYC_LOCAL_SYNCHRONIZED_COLLECTION" priority="1" abbrev="LSYC" category="CORRECTNESS">
+ <BugInstance type="LSYC_LOCAL_SYNCHRONIZED_COLLECTION" priority="1" abbrev="LSYC" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="BSB_Sample">
<SourceLine classname="BSB_Sample" sourcefile="BSB_Sample.java" sourcepath="BSB_Sample.java"/>
</Class>
@@ -266,7 +272,7 @@
</Method>
<SourceLine classname="BSB_Sample" start="54" end="54" startBytecode="16" endBytecode="16" sourcefile="BSB_Sample.java" sourcepath="BSB_Sample.java"/>
</BugInstance>
- <BugInstance type="LSYC_LOCAL_SYNCHRONIZED_COLLECTION" priority="1" abbrev="LSYC" category="CORRECTNESS">
+ <BugInstance type="LSYC_LOCAL_SYNCHRONIZED_COLLECTION" priority="1" abbrev="LSYC" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="BSB_Sample">
<SourceLine classname="BSB_Sample" sourcefile="BSB_Sample.java" sourcepath="BSB_Sample.java"/>
</Class>
@@ -275,7 +281,7 @@
</Method>
<SourceLine classname="BSB_Sample" start="18" end="18" startBytecode="14" endBytecode="14" sourcefile="BSB_Sample.java" sourcepath="BSB_Sample.java"/>
</BugInstance>
- <BugInstance type="LSYC_LOCAL_SYNCHRONIZED_COLLECTION" priority="1" abbrev="LSYC" category="CORRECTNESS">
+ <BugInstance type="LSYC_LOCAL_SYNCHRONIZED_COLLECTION" priority="1" abbrev="LSYC" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="BSB_Sample">
<SourceLine classname="BSB_Sample" sourcefile="BSB_Sample.java" sourcepath="BSB_Sample.java"/>
</Class>
@@ -284,7 +290,7 @@
</Method>
<SourceLine classname="BSB_Sample" start="30" end="30" startBytecode="16" endBytecode="16" sourcefile="BSB_Sample.java" sourcepath="BSB_Sample.java"/>
</BugInstance>
- <BugInstance type="NMCS_NEEDLESS_MEMBER_COLLECTION_SYNCHRONIZATION" priority="2" abbrev="NMCS" category="PERFORMANCE">
+ <BugInstance type="NMCS_NEEDLESS_MEMBER_COLLECTION_SYNCHRONIZATION" priority="2" abbrev="NMCS" category="PERFORMANCE" firstSeen="12/25/10 2:59 PM">
<Class classname="BSB_Sample">
<SourceLine classname="BSB_Sample" sourcefile="BSB_Sample.java" sourcepath="BSB_Sample.java"/>
</Class>
@@ -292,63 +298,63 @@
<SourceLine classname="BSB_Sample" start="12" end="12" startBytecode="37" endBytecode="37" sourcefile="BSB_Sample.java" sourcepath="BSB_Sample.java"/>
</Field>
</BugInstance>
- <BugInstance type="CAO_CONFUSING_AUTOBOXED_OVERLOADING" priority="2" abbrev="CAO" category="CORRECTNESS">
+ <BugInstance type="CAO_CONFUSING_AUTOBOXED_OVERLOADING" priority="2" abbrev="CAO" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="CAO_Sample">
<SourceLine classname="CAO_Sample" sourcefile="CAO_Sample.java" sourcepath="CAO_Sample.java"/>
</Class>
<String value="testcd(D)V"/>
<String value="testcd(Ljava/lang/Character;)V"/>
</BugInstance>
- <BugInstance type="CAO_CONFUSING_AUTOBOXED_OVERLOADING" priority="2" abbrev="CAO" category="CORRECTNESS">
+ <BugInstance type="CAO_CONFUSING_AUTOBOXED_OVERLOADING" priority="2" abbrev="CAO" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="CAO_Sample">
<SourceLine classname="CAO_Sample" sourcefile="CAO_Sample.java" sourcepath="CAO_Sample.java"/>
</Class>
<String value="testcd(Ljava/lang/Character;)V"/>
<String value="testcd(D)V"/>
</BugInstance>
- <BugInstance type="CAO_CONFUSING_AUTOBOXED_OVERLOADING" priority="2" abbrev="CAO" category="CORRECTNESS">
+ <BugInstance type="CAO_CONFUSING_AUTOBOXED_OVERLOADING" priority="2" abbrev="CAO" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="CAO_Sample">
<SourceLine classname="CAO_Sample" sourcefile="CAO_Sample.java" sourcepath="CAO_Sample.java"/>
</Class>
<String value="testcf(F)V"/>
<String value="testcf(Ljava/lang/Character;)V"/>
</BugInstance>
- <BugInstance type="CAO_CONFUSING_AUTOBOXED_OVERLOADING" priority="2" abbrev="CAO" category="CORRECTNESS">
+ <BugInstance type="CAO_CONFUSING_AUTOBOXED_OVERLOADING" priority="2" abbrev="CAO" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="CAO_Sample">
<SourceLine classname="CAO_Sample" sourcefile="CAO_Sample.java" sourcepath="CAO_Sample.java"/>
</Class>
<String value="testcf(Ljava/lang/Character;)V"/>
<String value="testcf(F)V"/>
</BugInstance>
- <BugInstance type="CAO_CONFUSING_AUTOBOXED_OVERLOADING" priority="2" abbrev="CAO" category="CORRECTNESS">
+ <BugInstance type="CAO_CONFUSING_AUTOBOXED_OVERLOADING" priority="2" abbrev="CAO" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="CAO_Sample">
<SourceLine classname="CAO_Sample" sourcefile="CAO_Sample.java" sourcepath="CAO_Sample.java"/>
</Class>
<String value="testci(I)V"/>
<String value="testci(Ljava/lang/Character;)V"/>
</BugInstance>
- <BugInstance type="CAO_CONFUSING_AUTOBOXED_OVERLOADING" priority="2" abbrev="CAO" category="CORRECTNESS">
+ <BugInstance type="CAO_CONFUSING_AUTOBOXED_OVERLOADING" priority="2" abbrev="CAO" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="CAO_Sample">
<SourceLine classname="CAO_Sample" sourcefile="CAO_Sample.java" sourcepath="CAO_Sample.java"/>
</Class>
<String value="testci(Ljava/lang/Character;)V"/>
<String value="testci(I)V"/>
</BugInstance>
- <BugInstance type="CAO_CONFUSING_AUTOBOXED_OVERLOADING" priority="2" abbrev="CAO" category="CORRECTNESS">
+ <BugInstance type="CAO_CONFUSING_AUTOBOXED_OVERLOADING" priority="2" abbrev="CAO" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="CAO_Sample">
<SourceLine classname="CAO_Sample" sourcefile="CAO_Sample.java" sourcepath="CAO_Sample.java"/>
</Class>
<String value="testcj(J)V"/>
<String value="testcj(Ljava/lang/Character;)V"/>
</BugInstance>
- <BugInstance type="CAO_CONFUSING_AUTOBOXED_OVERLOADING" priority="2" abbrev="CAO" category="CORRECTNESS">
+ <BugInstance type="CAO_CONFUSING_AUTOBOXED_OVERLOADING" priority="2" abbrev="CAO" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="CAO_Sample">
<SourceLine classname="CAO_Sample" sourcefile="CAO_Sample.java" sourcepath="CAO_Sample.java"/>
</Class>
<String value="testcj(Ljava/lang/Character;)V"/>
<String value="testcj(J)V"/>
</BugInstance>
- <BugInstance type="CBX_CUSTOM_BUILT_XML" priority="3" abbrev="CBX" category="STYLE">
+ <BugInstance type="CBX_CUSTOM_BUILT_XML" priority="3" abbrev="CBX" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="CBX_Sample">
<SourceLine classname="CBX_Sample" sourcefile="CBX_Sample.java" sourcepath="CBX_Sample.java"/>
</Class>
@@ -357,7 +363,7 @@
</Method>
<SourceLine classname="CBX_Sample" start="7" end="7" startBytecode="11" endBytecode="11" sourcefile="CBX_Sample.java" sourcepath="CBX_Sample.java"/>
</BugInstance>
- <BugInstance type="ISB_INEFFICIENT_STRING_BUFFERING" priority="2" abbrev="ISB" category="PERFORMANCE">
+ <BugInstance type="ISB_INEFFICIENT_STRING_BUFFERING" priority="2" abbrev="ISB" category="PERFORMANCE" firstSeen="12/25/10 2:59 PM">
<Class classname="CBX_Sample">
<SourceLine classname="CBX_Sample" sourcefile="CBX_Sample.java" sourcepath="CBX_Sample.java"/>
</Class>
@@ -366,7 +372,7 @@
</Method>
<SourceLine classname="CBX_Sample" start="8" end="8" startBytecode="49" endBytecode="49" sourcefile="CBX_Sample.java" sourcepath="CBX_Sample.java"/>
</BugInstance>
- <BugInstance type="LSYC_LOCAL_SYNCHRONIZED_COLLECTION" priority="1" abbrev="LSYC" category="CORRECTNESS">
+ <BugInstance type="LSYC_LOCAL_SYNCHRONIZED_COLLECTION" priority="1" abbrev="LSYC" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="CBX_Sample">
<SourceLine classname="CBX_Sample" sourcefile="CBX_Sample.java" sourcepath="CBX_Sample.java"/>
</Class>
@@ -375,7 +381,7 @@
</Method>
<SourceLine classname="CBX_Sample" start="6" end="6" startBytecode="7" endBytecode="7" sourcefile="CBX_Sample.java" sourcepath="CBX_Sample.java"/>
</BugInstance>
- <BugInstance type="CLI_CONSTANT_LIST_INDEX" priority="2" abbrev="CLI" category="CORRECTNESS">
+ <BugInstance type="CLI_CONSTANT_LIST_INDEX" priority="2" abbrev="CLI" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="CLI_Sample">
<SourceLine classname="CLI_Sample" sourcefile="CLI_Sample.java" sourcepath="CLI_Sample.java"/>
</Class>
@@ -384,7 +390,7 @@
</Method>
<SourceLine classname="CLI_Sample" start="8" end="8" startBytecode="24" endBytecode="24" sourcefile="CLI_Sample.java" sourcepath="CLI_Sample.java"/>
</BugInstance>
- <BugInstance type="CLI_CONSTANT_LIST_INDEX" priority="2" abbrev="CLI" category="CORRECTNESS">
+ <BugInstance type="CLI_CONSTANT_LIST_INDEX" priority="2" abbrev="CLI" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="CLI_Sample">
<SourceLine classname="CLI_Sample" sourcefile="CLI_Sample.java" sourcepath="CLI_Sample.java"/>
</Class>
@@ -393,7 +399,7 @@
</Method>
<SourceLine classname="CLI_Sample" start="15" end="15" startBytecode="6" endBytecode="6" sourcefile="CLI_Sample.java" sourcepath="CLI_Sample.java"/>
</BugInstance>
- <BugInstance type="CLI_CONSTANT_LIST_INDEX" priority="2" abbrev="CLI" category="CORRECTNESS">
+ <BugInstance type="CLI_CONSTANT_LIST_INDEX" priority="2" abbrev="CLI" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="CLI_Sample">
<SourceLine classname="CLI_Sample" sourcefile="CLI_Sample.java" sourcepath="CLI_Sample.java"/>
</Class>
@@ -402,7 +408,7 @@
</Method>
<SourceLine classname="CLI_Sample" start="16" end="16" startBytecode="10" endBytecode="10" sourcefile="CLI_Sample.java" sourcepath="CLI_Sample.java"/>
</BugInstance>
- <BugInstance type="SBSC_USE_STRINGBUFFER_CONCATENATION" priority="2" abbrev="SBSC" category="PERFORMANCE">
+ <BugInstance type="SBSC_USE_STRINGBUFFER_CONCATENATION" priority="2" abbrev="SBSC" category="PERFORMANCE" firstSeen="12/25/10 2:59 PM">
<Class classname="CLI_Sample">
<SourceLine classname="CLI_Sample" sourcefile="CLI_Sample.java" sourcepath="CLI_Sample.java"/>
</Class>
@@ -411,7 +417,7 @@
</Method>
<SourceLine classname="CLI_Sample" start="8" end="8" startBytecode="11" endBytecode="11" sourcefile="CLI_Sample.java" sourcepath="CLI_Sample.java"/>
</BugInstance>
- <BugInstance type="COM_COPIED_OVERRIDDEN_METHOD" priority="2" abbrev="COM" category="STYLE">
+ <BugInstance type="COM_COPIED_OVERRIDDEN_METHOD" priority="2" abbrev="COM" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="COM_Sample$Derived">
<SourceLine classname="COM_Sample$Derived" sourcefile="COM_Sample.java" sourcepath="COM_Sample.java"/>
</Class>
@@ -420,7 +426,7 @@
</Method>
<SourceLine classname="COM_Sample$Derived" start="30" end="30" startBytecode="0" endBytecode="0" sourcefile="COM_Sample.java" sourcepath="COM_Sample.java"/>
</BugInstance>
- <BugInstance type="COM_COPIED_OVERRIDDEN_METHOD" priority="2" abbrev="COM" category="STYLE">
+ <BugInstance type="COM_COPIED_OVERRIDDEN_METHOD" priority="2" abbrev="COM" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="COM_Sample$Derived">
<SourceLine classname="COM_Sample$Derived" sourcefile="COM_Sample.java" sourcepath="COM_Sample.java"/>
</Class>
@@ -429,7 +435,7 @@
</Method>
<SourceLine classname="COM_Sample$Derived" start="45" end="45" startBytecode="0" endBytecode="0" sourcefile="COM_Sample.java" sourcepath="COM_Sample.java"/>
</BugInstance>
- <BugInstance type="DDC_DOUBLE_DATE_COMPARISON" priority="2" abbrev="DDC" category="PERFORMANCE">
+ <BugInstance type="DDC_DOUBLE_DATE_COMPARISON" priority="2" abbrev="DDC" category="PERFORMANCE" firstSeen="12/25/10 2:59 PM">
<Class classname="DDC_Sample">
<SourceLine classname="DDC_Sample" sourcefile="DDC_Sample.java" sourcepath="DDC_Sample.java"/>
</Class>
@@ -438,7 +444,7 @@
</Method>
<SourceLine classname="DDC_Sample" start="8" end="8" startBytecode="13" endBytecode="13" sourcefile="DDC_Sample.java" sourcepath="DDC_Sample.java"/>
</BugInstance>
- <BugInstance type="DDC_DOUBLE_DATE_COMPARISON" priority="2" abbrev="DDC" category="PERFORMANCE">
+ <BugInstance type="DDC_DOUBLE_DATE_COMPARISON" priority="2" abbrev="DDC" category="PERFORMANCE" firstSeen="12/25/10 2:59 PM">
<Class classname="DDC_Sample">
<SourceLine classname="DDC_Sample" sourcefile="DDC_Sample.java" sourcepath="DDC_Sample.java"/>
</Class>
@@ -447,7 +453,7 @@
</Method>
<SourceLine classname="DDC_Sample" start="16" end="16" startBytecode="13" endBytecode="13" sourcefile="DDC_Sample.java" sourcepath="DDC_Sample.java"/>
</BugInstance>
- <BugInstance type="DDC_DOUBLE_DATE_COMPARISON" priority="2" abbrev="DDC" category="PERFORMANCE">
+ <BugInstance type="DDC_DOUBLE_DATE_COMPARISON" priority="2" abbrev="DDC" category="PERFORMANCE" firstSeen="12/25/10 2:59 PM">
<Class classname="DDC_Sample">
<SourceLine classname="DDC_Sample" sourcefile="DDC_Sample.java" sourcepath="DDC_Sample.java"/>
</Class>
@@ -456,7 +462,7 @@
</Method>
<SourceLine classname="DDC_Sample" start="24" end="24" startBytecode="13" endBytecode="13" sourcefile="DDC_Sample.java" sourcepath="DDC_Sample.java"/>
</BugInstance>
- <BugInstance type="DLC_DUBIOUS_LIST_COLLECTION" priority="2" abbrev="DLC" category="PERFORMANCE">
+ <BugInstance type="DLC_DUBIOUS_LIST_COLLECTION" priority="2" abbrev="DLC" category="PERFORMANCE" firstSeen="12/25/10 2:59 PM">
<Class classname="DLC_Sample">
<SourceLine classname="DLC_Sample" sourcefile="DLC_Sample.java" sourcepath="DLC_Sample.java"/>
</Class>
@@ -465,7 +471,7 @@
</Field>
<SourceLine classname="DLC_Sample" start="11" end="11" startBytecode="5" endBytecode="5" sourcefile="DLC_Sample.java" sourcepath="DLC_Sample.java"/>
</BugInstance>
- <BugInstance type="LII_LIST_INDEXED_ITERATING" priority="2" abbrev="LII" category="STYLE">
+ <BugInstance type="LII_LIST_INDEXED_ITERATING" priority="2" abbrev="LII" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="DLC_Sample">
<SourceLine classname="DLC_Sample" sourcefile="DLC_Sample.java" sourcepath="DLC_Sample.java"/>
</Class>
@@ -474,7 +480,7 @@
</Method>
<SourceLine classname="DLC_Sample" start="14" end="14" startBytecode="26" endBytecode="99" sourcefile="DLC_Sample.java" sourcepath="DLC_Sample.java"/>
</BugInstance>
- <BugInstance type="DRE_DECLARED_RUNTIME_EXCEPTION" priority="2" abbrev="DRE" category="STYLE">
+ <BugInstance type="DRE_DECLARED_RUNTIME_EXCEPTION" priority="2" abbrev="DRE" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="DRE_Sample">
<SourceLine classname="DRE_Sample" sourcefile="DRE_Sample.java" sourcepath="DRE_Sample.java"/>
</Class>
@@ -483,7 +489,7 @@
</Method>
<String value="java.lang.NullPointerException"/>
</BugInstance>
- <BugInstance type="DRE_DECLARED_RUNTIME_EXCEPTION" priority="2" abbrev="DRE" category="STYLE">
+ <BugInstance type="DRE_DECLARED_RUNTIME_EXCEPTION" priority="2" abbrev="DRE" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="DRE_Sample">
<SourceLine classname="DRE_Sample" sourcefile="DRE_Sample.java" sourcepath="DRE_Sample.java"/>
</Class>
@@ -493,7 +499,7 @@
<String value="java.lang.IllegalMonitorStateException"/>
<String value="java.lang.ClassCastException"/>
</BugInstance>
- <BugInstance type="DRE_DECLARED_RUNTIME_EXCEPTION" priority="3" abbrev="DRE" category="STYLE">
+ <BugInstance type="DRE_DECLARED_RUNTIME_EXCEPTION" priority="3" abbrev="DRE" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="DRE_Sample">
<SourceLine classname="DRE_Sample" sourcefile="DRE_Sample.java" sourcepath="DRE_Sample.java"/>
</Class>
@@ -502,7 +508,7 @@
</Method>
<String value="CustomRuntimeException"/>
</BugInstance>
- <BugInstance type="DWI_DELETING_WHILE_ITERATING" priority="2" abbrev="DWI" category="CORRECTNESS">
+ <BugInstance type="DWI_DELETING_WHILE_ITERATING" priority="2" abbrev="DWI" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="DWI_Sample">
<SourceLine classname="DWI_Sample" sourcefile="DWI_Sample.java" sourcepath="DWI_Sample.java"/>
</Class>
@@ -511,7 +517,7 @@
</Method>
<SourceLine classname="DWI_Sample" start="17" end="17" startBytecode="38" endBytecode="38" sourcefile="DWI_Sample.java" sourcepath="DWI_Sample.java"/>
</BugInstance>
- <BugInstance type="DWI_MODIFYING_WHILE_ITERATING" priority="2" abbrev="DWI" category="CORRECTNESS">
+ <BugInstance type="DWI_MODIFYING_WHILE_ITERATING" priority="2" abbrev="DWI" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="DWI_Sample">
<SourceLine classname="DWI_Sample" sourcefile="DWI_Sample.java" sourcepath="DWI_Sample.java"/>
</Class>
@@ -520,7 +526,7 @@
</Method>
<SourceLine classname="DWI_Sample" start="25" end="25" startBytecode="39" endBytecode="39" sourcefile="DWI_Sample.java" sourcepath="DWI_Sample.java"/>
</BugInstance>
- <BugInstance type="LSC_LITERAL_STRING_COMPARISON" priority="3" abbrev="LSC" category="STYLE">
+ <BugInstance type="LSC_LITERAL_STRING_COMPARISON" priority="3" abbrev="LSC" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="DWI_Sample">
<SourceLine classname="DWI_Sample" sourcefile="DWI_Sample.java" sourcepath="DWI_Sample.java"/>
</Class>
@@ -529,7 +535,7 @@
</Method>
<SourceLine classname="DWI_Sample" start="24" end="24" startBytecode="31" endBytecode="31" sourcefile="DWI_Sample.java" sourcepath="DWI_Sample.java"/>
</BugInstance>
- <BugInstance type="UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR" priority="3" abbrev="UwF" category="STYLE">
+ <BugInstance type="UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR" priority="3" abbrev="UwF" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="DWI_Sample">
<SourceLine classname="DWI_Sample" sourcefile="DWI_Sample.java" sourcepath="DWI_Sample.java"/>
</Class>
@@ -537,12 +543,12 @@
<SourceLine classname="DWI_Sample" sourcefile="DWI_Sample.java" sourcepath="DWI_Sample.java"/>
</Field>
</BugInstance>
- <BugInstance type="SIC_INNER_SHOULD_BE_STATIC_ANON" priority="3" abbrev="SIC" category="PERFORMANCE">
+ <BugInstance type="SIC_INNER_SHOULD_BE_STATIC_ANON" priority="3" abbrev="SIC" category="PERFORMANCE" firstSeen="12/25/10 2:59 PM">
<Class classname="DWI_Sample$1PoolSample">
<SourceLine classname="DWI_Sample$1PoolSample" sourcefile="DWI_Sample.java" sourcepath="DWI_Sample.java"/>
</Class>
</BugInstance>
- <BugInstance type="CI_CONFUSED_INHERITANCE" priority="3" abbrev="CI" category="STYLE">
+ <BugInstance type="CI_CONFUSED_INHERITANCE" priority="3" abbrev="CI" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="FCBL_Sample">
<SourceLine classname="FCBL_Sample" sourcefile="FCBL_Sample.java" sourcepath="FCBL_Sample.java"/>
</Class>
@@ -550,7 +556,7 @@
<SourceLine classname="FCBL_Sample" sourcefile="FCBL_Sample.java" sourcepath="FCBL_Sample.java"/>
</Field>
</BugInstance>
- <BugInstance type="FCBL_FIELD_COULD_BE_LOCAL" priority="2" abbrev="FCBL" category="CORRECTNESS">
+ <BugInstance type="FCBL_FIELD_COULD_BE_LOCAL" priority="2" abbrev="FCBL" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="FCBL_Sample">
<SourceLine classname="FCBL_Sample" sourcefile="FCBL_Sample.java" sourcepath="FCBL_Sample.java"/>
</Class>
@@ -559,7 +565,7 @@
</Field>
<SourceLine classname="FCBL_Sample" start="14" end="14" startBytecode="11" endBytecode="11" sourcefile="FCBL_Sample.java" sourcepath="FCBL_Sample.java"/>
</BugInstance>
- <BugInstance type="LSC_LITERAL_STRING_COMPARISON" priority="3" abbrev="LSC" category="STYLE">
+ <BugInstance type="LSC_LITERAL_STRING_COMPARISON" priority="3" abbrev="LSC" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="FCBL_Sample">
<SourceLine classname="FCBL_Sample" sourcefile="FCBL_Sample.java" sourcepath="FCBL_Sample.java"/>
</Class>
@@ -568,7 +574,7 @@
</Method>
<SourceLine classname="FCBL_Sample" start="36" end="36" startBytecode="5" endBytecode="5" sourcefile="FCBL_Sample.java" sourcepath="FCBL_Sample.java"/>
</BugInstance>
- <BugInstance type="LSC_LITERAL_STRING_COMPARISON" priority="3" abbrev="LSC" category="STYLE">
+ <BugInstance type="LSC_LITERAL_STRING_COMPARISON" priority="3" abbrev="LSC" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="FCBL_Sample">
<SourceLine classname="FCBL_Sample" sourcefile="FCBL_Sample.java" sourcepath="FCBL_Sample.java"/>
</Class>
@@ -577,7 +583,7 @@
</Method>
<SourceLine classname="FCBL_Sample" start="38" end="38" startBytecode="23" endBytecode="23" sourcefile="FCBL_Sample.java" sourcepath="FCBL_Sample.java"/>
</BugInstance>
- <BugInstance type="LSC_LITERAL_STRING_COMPARISON" priority="3" abbrev="LSC" category="STYLE">
+ <BugInstance type="LSC_LITERAL_STRING_COMPARISON" priority="3" abbrev="LSC" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="FCBL_Sample">
<SourceLine classname="FCBL_Sample" sourcefile="FCBL_Sample.java" sourcepath="FCBL_Sample.java"/>
</Class>
@@ -586,7 +592,7 @@
</Method>
<SourceLine classname="FCBL_Sample" start="40" end="40" startBytecode="41" endBytecode="41" sourcefile="FCBL_Sample.java" sourcepath="FCBL_Sample.java"/>
</BugInstance>
- <BugInstance type="LSC_LITERAL_STRING_COMPARISON" priority="3" abbrev="LSC" category="STYLE">
+ <BugInstance type="LSC_LITERAL_STRING_COMPARISON" priority="3" abbrev="LSC" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="FCBL_Sample">
<SourceLine classname="FCBL_Sample" sourcefile="FCBL_Sample.java" sourcepath="FCBL_Sample.java"/>
</Class>
@@ -595,7 +601,7 @@
</Method>
<SourceLine classname="FCBL_Sample" start="42" end="42" startBytecode="53" endBytecode="53" sourcefile="FCBL_Sample.java" sourcepath="FCBL_Sample.java"/>
</BugInstance>
- <BugInstance type="URF_UNREAD_FIELD" priority="2" abbrev="UrF" category="PERFORMANCE">
+ <BugInstance type="URF_UNREAD_FIELD" priority="2" abbrev="UrF" category="PERFORMANCE" firstSeen="12/25/10 2:59 PM">
<Class classname="FCBL_Sample">
<SourceLine classname="FCBL_Sample" sourcefile="FCBL_Sample.java" sourcepath="FCBL_Sample.java"/>
</Class>
@@ -604,7 +610,7 @@
</Field>
<SourceLine classname="FCBL_Sample" start="16" end="16" startBytecode="21" endBytecode="21" sourcefile="FCBL_Sample.java" sourcepath="FCBL_Sample.java"/>
</BugInstance>
- <BugInstance type="URF_UNREAD_FIELD" priority="2" abbrev="UrF" category="PERFORMANCE">
+ <BugInstance type="URF_UNREAD_FIELD" priority="2" abbrev="UrF" category="PERFORMANCE" firstSeen="12/25/10 2:59 PM">
<Class classname="FCBL_Sample">
<SourceLine classname="FCBL_Sample" sourcefile="FCBL_Sample.java" sourcepath="FCBL_Sample.java"/>
</Class>
@@ -613,7 +619,7 @@
</Field>
<SourceLine classname="FCBL_Sample" start="14" end="14" startBytecode="11" endBytecode="11" sourcefile="FCBL_Sample.java" sourcepath="FCBL_Sample.java"/>
</BugInstance>
- <BugInstance type="FPL_FLOATING_POINT_LOOPS" priority="2" abbrev="FPL" category="CORRECTNESS">
+ <BugInstance type="FPL_FLOATING_POINT_LOOPS" priority="2" abbrev="FPL" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="FPL_Sample">
<SourceLine classname="FPL_Sample" sourcefile="FPL_Sample.java" sourcepath="FPL_Sample.java"/>
</Class>
@@ -622,7 +628,7 @@
</Method>
<SourceLine classname="FPL_Sample" start="14" end="14" startBytecode="2" endBytecode="2" sourcefile="FPL_Sample.java" sourcepath="FPL_Sample.java"/>
</BugInstance>
- <BugInstance type="FPL_FLOATING_POINT_LOOPS" priority="2" abbrev="FPL" category="CORRECTNESS">
+ <BugInstance type="FPL_FLOATING_POINT_LOOPS" priority="2" abbrev="FPL" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="FPL_Sample">
<SourceLine classname="FPL_Sample" sourcefile="FPL_Sample.java" sourcepath="FPL_Sample.java"/>
</Class>
@@ -631,7 +637,7 @@
</Method>
<SourceLine classname="FPL_Sample" start="7" end="7" startBytecode="2" endBytecode="2" sourcefile="FPL_Sample.java" sourcepath="FPL_Sample.java"/>
</BugInstance>
- <BugInstance type="FPL_FLOATING_POINT_LOOPS" priority="2" abbrev="FPL" category="CORRECTNESS">
+ <BugInstance type="FPL_FLOATING_POINT_LOOPS" priority="2" abbrev="FPL" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="FPL_Sample">
<SourceLine classname="FPL_Sample" sourcefile="FPL_Sample.java" sourcepath="FPL_Sample.java"/>
</Class>
@@ -640,7 +646,7 @@
</Method>
<SourceLine classname="FPL_Sample" start="21" end="21" startBytecode="2" endBytecode="2" sourcefile="FPL_Sample.java" sourcepath="FPL_Sample.java"/>
</BugInstance>
- <BugInstance type="NAB_NEEDLESS_BOXING_PARSE" priority="2" abbrev="NAB" category="PERFORMANCE">
+ <BugInstance type="NAB_NEEDLESS_BOXING_PARSE" priority="2" abbrev="NAB" category="PERFORMANCE" firstSeen="12/25/10 2:59 PM">
<Class classname="FPL_Sample">
<SourceLine classname="FPL_Sample" sourcefile="FPL_Sample.java" sourcepath="FPL_Sample.java"/>
</Class>
@@ -649,7 +655,7 @@
</Method>
<SourceLine classname="FPL_Sample" start="21" end="21" startBytecode="8" endBytecode="8" sourcefile="FPL_Sample.java" sourcepath="FPL_Sample.java"/>
</BugInstance>
- <BugInstance type="IP_PARAMETER_IS_DEAD_BUT_OVERWRITTEN" priority="2" abbrev="IP" category="CORRECTNESS">
+ <BugInstance type="IP_PARAMETER_IS_DEAD_BUT_OVERWRITTEN" priority="2" abbrev="IP" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="FP_Sample">
<SourceLine classname="FP_Sample" sourcefile="FP_Sample.java" sourcepath="FP_Sample.java"/>
</Class>
@@ -659,7 +665,7 @@
<LocalVariable name="a" register="1" pc="3" role="LOCAL_VARIABLE_NAMED"/>
<SourceLine classname="FP_Sample" start="11" end="11" startBytecode="2" endBytecode="2" sourcefile="FP_Sample.java" sourcepath="FP_Sample.java"/>
</BugInstance>
- <BugInstance type="IP_PARAMETER_IS_DEAD_BUT_OVERWRITTEN" priority="2" abbrev="IP" category="CORRECTNESS">
+ <BugInstance type="IP_PARAMETER_IS_DEAD_BUT_OVERWRITTEN" priority="2" abbrev="IP" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="FP_Sample">
<SourceLine classname="FP_Sample" sourcefile="FP_Sample.java" sourcepath="FP_Sample.java"/>
</Class>
@@ -669,7 +675,7 @@
<LocalVariable name="a" register="1" pc="2" role="LOCAL_VARIABLE_NAMED"/>
<SourceLine classname="FP_Sample" start="18" end="18" startBytecode="1" endBytecode="1" sourcefile="FP_Sample.java" sourcepath="FP_Sample.java"/>
</BugInstance>
- <BugInstance type="ISB_EMPTY_STRING_APPENDING" priority="2" abbrev="ISB" category="PERFORMANCE">
+ <BugInstance type="ISB_EMPTY_STRING_APPENDING" priority="2" abbrev="ISB" category="PERFORMANCE" firstSeen="12/25/10 2:59 PM">
<Class classname="ISB_Sample">
<SourceLine classname="ISB_Sample" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</Class>
@@ -678,7 +684,7 @@
</Method>
<SourceLine classname="ISB_Sample" start="43" end="43" startBytecode="9" endBytecode="9" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</BugInstance>
- <BugInstance type="ISB_INEFFICIENT_STRING_BUFFERING" priority="2" abbrev="ISB" category="PERFORMANCE">
+ <BugInstance type="ISB_INEFFICIENT_STRING_BUFFERING" priority="2" abbrev="ISB" category="PERFORMANCE" firstSeen="12/25/10 2:59 PM">
<Class classname="ISB_Sample">
<SourceLine classname="ISB_Sample" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</Class>
@@ -687,7 +693,7 @@
</Method>
<SourceLine classname="ISB_Sample" start="8" end="8" startBytecode="33" endBytecode="33" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</BugInstance>
- <BugInstance type="ISB_INEFFICIENT_STRING_BUFFERING" priority="2" abbrev="ISB" category="PERFORMANCE">
+ <BugInstance type="ISB_INEFFICIENT_STRING_BUFFERING" priority="2" abbrev="ISB" category="PERFORMANCE" firstSeen="12/25/10 2:59 PM">
<Class classname="ISB_Sample">
<SourceLine classname="ISB_Sample" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</Class>
@@ -696,7 +702,7 @@
</Method>
<SourceLine classname="ISB_Sample" start="9" end="9" startBytecode="57" endBytecode="57" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</BugInstance>
- <BugInstance type="ISB_INEFFICIENT_STRING_BUFFERING" priority="2" abbrev="ISB" category="PERFORMANCE">
+ <BugInstance type="ISB_INEFFICIENT_STRING_BUFFERING" priority="2" abbrev="ISB" category="PERFORMANCE" firstSeen="12/25/10 2:59 PM">
<Class classname="ISB_Sample">
<SourceLine classname="ISB_Sample" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</Class>
@@ -705,7 +711,7 @@
</Method>
<SourceLine classname="ISB_Sample" start="17" end="17" startBytecode="74" endBytecode="74" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</BugInstance>
- <BugInstance type="ISB_INEFFICIENT_STRING_BUFFERING" priority="3" abbrev="ISB" category="PERFORMANCE">
+ <BugInstance type="ISB_INEFFICIENT_STRING_BUFFERING" priority="3" abbrev="ISB" category="PERFORMANCE" firstSeen="12/25/10 2:59 PM">
<Class classname="ISB_Sample">
<SourceLine classname="ISB_Sample" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</Class>
@@ -714,7 +720,7 @@
</Method>
<SourceLine classname="ISB_Sample" start="69" end="69" startBytecode="51" endBytecode="51" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</BugInstance>
- <BugInstance type="LSYC_LOCAL_SYNCHRONIZED_COLLECTION" priority="1" abbrev="LSYC" category="CORRECTNESS">
+ <BugInstance type="LSYC_LOCAL_SYNCHRONIZED_COLLECTION" priority="1" abbrev="LSYC" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="ISB_Sample">
<SourceLine classname="ISB_Sample" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</Class>
@@ -723,7 +729,7 @@
</Method>
<SourceLine classname="ISB_Sample" start="56" end="56" startBytecode="7" endBytecode="7" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</BugInstance>
- <BugInstance type="LSYC_LOCAL_SYNCHRONIZED_COLLECTION" priority="1" abbrev="LSYC" category="CORRECTNESS">
+ <BugInstance type="LSYC_LOCAL_SYNCHRONIZED_COLLECTION" priority="1" abbrev="LSYC" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="ISB_Sample">
<SourceLine classname="ISB_Sample" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</Class>
@@ -732,7 +738,7 @@
</Method>
<SourceLine classname="ISB_Sample" start="7" end="7" startBytecode="7" endBytecode="7" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</BugInstance>
- <BugInstance type="LSYC_LOCAL_SYNCHRONIZED_COLLECTION" priority="1" abbrev="LSYC" category="CORRECTNESS">
+ <BugInstance type="LSYC_LOCAL_SYNCHRONIZED_COLLECTION" priority="1" abbrev="LSYC" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="ISB_Sample">
<SourceLine classname="ISB_Sample" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</Class>
@@ -741,7 +747,7 @@
</Method>
<SourceLine classname="ISB_Sample" start="14" end="14" startBytecode="7" endBytecode="7" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</BugInstance>
- <BugInstance type="LSYC_LOCAL_SYNCHRONIZED_COLLECTION" priority="1" abbrev="LSYC" category="CORRECTNESS">
+ <BugInstance type="LSYC_LOCAL_SYNCHRONIZED_COLLECTION" priority="1" abbrev="LSYC" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="ISB_Sample">
<SourceLine classname="ISB_Sample" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</Class>
@@ -750,7 +756,7 @@
</Method>
<SourceLine classname="ISB_Sample" start="25" end="25" startBytecode="8" endBytecode="8" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</BugInstance>
- <BugInstance type="LSYC_LOCAL_SYNCHRONIZED_COLLECTION" priority="1" abbrev="LSYC" category="CORRECTNESS">
+ <BugInstance type="LSYC_LOCAL_SYNCHRONIZED_COLLECTION" priority="1" abbrev="LSYC" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="ISB_Sample">
<SourceLine classname="ISB_Sample" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</Class>
@@ -759,7 +765,7 @@
</Method>
<SourceLine classname="ISB_Sample" start="31" end="31" startBytecode="8" endBytecode="8" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</BugInstance>
- <BugInstance type="LSYC_LOCAL_SYNCHRONIZED_COLLECTION" priority="1" abbrev="LSYC" category="CORRECTNESS">
+ <BugInstance type="LSYC_LOCAL_SYNCHRONIZED_COLLECTION" priority="1" abbrev="LSYC" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="ISB_Sample">
<SourceLine classname="ISB_Sample" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</Class>
@@ -768,7 +774,7 @@
</Method>
<SourceLine classname="ISB_Sample" start="48" end="48" startBytecode="7" endBytecode="7" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</BugInstance>
- <BugInstance type="LSYC_LOCAL_SYNCHRONIZED_COLLECTION" priority="1" abbrev="LSYC" category="CORRECTNESS">
+ <BugInstance type="LSYC_LOCAL_SYNCHRONIZED_COLLECTION" priority="1" abbrev="LSYC" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="ISB_Sample">
<SourceLine classname="ISB_Sample" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</Class>
@@ -777,7 +783,7 @@
</Method>
<SourceLine classname="ISB_Sample" start="67" end="67" startBytecode="19" endBytecode="19" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</BugInstance>
- <BugInstance type="USBR_UNNECESSARY_STORE_BEFORE_RETURN" priority="2" abbrev="USBR" category="STYLE">
+ <BugInstance type="USBR_UNNECESSARY_STORE_BEFORE_RETURN" priority="2" abbrev="USBR" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="ISB_Sample">
<SourceLine classname="ISB_Sample" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</Class>
@@ -786,7 +792,7 @@
</Method>
<SourceLine classname="ISB_Sample" start="38" end="38" startBytecode="58" endBytecode="58" sourcefile="ISB_Sample.java" sourcepath="ISB_Sample.java"/>
</BugInstance>
- <BugInstance type="ITC_INHERITANCE_TYPE_CHECKING" priority="2" abbrev="ITC" category="STYLE">
+ <BugInstance type="ITC_INHERITANCE_TYPE_CHECKING" priority="2" abbrev="ITC" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="ITC_Sample">
<SourceLine classname="ITC_Sample" sourcefile="ITC_Sample.java" sourcepath="ITC_Sample.java"/>
</Class>
@@ -795,7 +801,7 @@
</Method>
<SourceLine classname="ITC_Sample" start="10" end="10" startBytecode="0" endBytecode="0" sourcefile="ITC_Sample.java" sourcepath="ITC_Sample.java"/>
</BugInstance>
- <BugInstance type="JVR_JDBC_VENDOR_RELIANCE" priority="2" abbrev="JVR" category="CORRECTNESS">
+ <BugInstance type="JVR_JDBC_VENDOR_RELIANCE" priority="2" abbrev="JVR" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="JVR_Sample">
<SourceLine classname="JVR_Sample" sourcefile="JVR_Sample.java" sourcepath="JVR_Sample.java"/>
</Class>
@@ -804,7 +810,7 @@
</Method>
<SourceLine classname="JVR_Sample" start="14" end="14" startBytecode="12" endBytecode="12" sourcefile="JVR_Sample.java" sourcepath="JVR_Sample.java"/>
</BugInstance>
- <BugInstance type="LEST_LOST_EXCEPTION_STACK_TRACE" priority="2" abbrev="LEST" category="CORRECTNESS">
+ <BugInstance type="LEST_LOST_EXCEPTION_STACK_TRACE" priority="2" abbrev="LEST" category="CORRECTNESS" firstSeen="12/25/10 2:59 PM">
<Class classname="LEST_Sample">
<SourceLine classname="LEST_Sample" sourcefile="LEST_Sample.java" sourcepath="LEST_Sample.java"/>
</Class>
@@ -813,7 +819,7 @@
</Method>
<SourceLine classname="LEST_Sample" start="17" end="17" startBytecode="28" endBytecode="28" sourcefile="LEST_Sample.java" sourcepath="LEST_Sample.java"/>
</BugInstance>
- <BugInstance type="DLS_DEAD_LOCAL_STORE" priority="3" abbrev="DLS" category="STYLE">
+ <BugInstance type="DLS_DEAD_LOCAL_STORE" priority="3" abbrev="DLS" category="STYLE" firstSeen="12/25/10 2:59 PM">
<Class classname="LII_Sample">
<SourceLine classname="LII_Sample" sourcefile="LII_Sample.java" sourcepath="LII_Sample.java"/>
</Class>
@@ -823,7 +829,7 @@
<LocalVariable name="?" register="7" pc="51" role="LOCAL_VARIABLE_UNKNOWN"/>
<SourceLine classname="LII_Sample" start="67" end="67" startBytecode="51" endBytecode="51" sourcefile="LII_Sample.java" sourcepath="LII_Sample.java"/>
</BugInstance>
- <BugInstance type="ISB_INEFFICIENT_STRING_BUFFERING" priority="2" abbrev="ISB" category="PERFORMANCE">
+ <BugInstance type="ISB_INEFFICIENT_STRING_BUFFERING" priority="2" abbrev="ISB" category="PERFORMANCE" firstSeen="12/25/10 2:59 PM">
...
[truncated message content] |
|
From: <dbr...@us...> - 2011-03-01 07:07:22
|
Revision: 1654
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1654&view=rev
Author: dbrosius
Date: 2011-03-01 07:07:16 +0000 (Tue, 01 Mar 2011)
Log Message:
-----------
update date to 2011
Modified Paths:
--------------
trunk/fb-contrib/build.xml
Modified: trunk/fb-contrib/build.xml
===================================================================
--- trunk/fb-contrib/build.xml 2011-03-01 07:04:24 UTC (rev 1653)
+++ trunk/fb-contrib/build.xml 2011-03-01 07:07:16 UTC (rev 1654)
@@ -156,7 +156,7 @@
destdir="${javadoc.dir}"
windowtitle="fb-contrib api">
<doctitle><![CDATA[<h1>fb-contrib javadoc</h1>]]></doctitle>
- <bottom><![CDATA[<i>Copyright © 2005-2010 MeBigFatGuy.com. All Rights Reserved.</i>]]></bottom>
+ <bottom><![CDATA[<i>Copyright © 2005-2011 MeBigFatGuy.com. All Rights Reserved.</i>]]></bottom>
</javadoc>
</target>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <dbr...@us...> - 2011-03-01 07:04:34
|
Revision: 1653
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1653&view=rev
Author: dbrosius
Date: 2011-03-01 07:04:24 +0000 (Tue, 01 Mar 2011)
Log Message:
-----------
update copyright dates
Modified Paths:
--------------
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/FBContrib.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/collect/CollectStatistics.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/collect/Statistics.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/AbnormalFinallyBlockReturn.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/AbstractClassEmptyMethods.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/AbstractOverriddenMethod.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ArrayBasedCollections.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ArrayWrappedCallByReference.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BloatedAssignmentScope.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BloatedSynchronizedBlock.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BogusExceptionDeclaration.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ClassEnvy.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ConfusingAutoboxedOverloading.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ConfusingFunctionSemantics.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ConstantListIndex.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ContraVariantArrayAssignment.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/CopiedOverriddenMethod.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/CustomBuiltXML.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/CyclomaticComplexity.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DateComparison.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DeclaredRuntimeException.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DeletingWhileIterating.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DeprecatedTypesafeEnumPattern.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DubiousListCollection.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DubiousSetOfCollections.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ExceptionSoftening.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/FieldCouldBeLocal.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/FinalParameters.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/FloatingPointLoops.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ImproperPropertiesUse.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/InappropriateToStringUse.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/InconsistentKeyNameCasing.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/IncorrectInternalClassUse.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/InefficientStringBuffering.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/InheritanceTypeChecking.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/JDBCVendorReliance.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/JUnitAssertionOddities.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ListIndexedIterating.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/LiteralStringComparison.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/LocalSynchronizedCollection.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/LoggerOddities.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/LostExceptionStackTrace.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ManualArrayCopy.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/MethodReturnsConstant.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/MisleadingOverloadModel.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/MoreDumbMethods.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NeedlessAutoboxing.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NeedlessCustomSerialization.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NeedlessInstanceRetrieval.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NeedlessMemberCollectionSynchronization.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NonCollectionMethodUse.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NonFunctionalField.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NonOwnedSynchronization.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NonRecycleableTaglibs.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NonSymmetricEquals.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/OrphanedDOMNode.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/OverlyConcreteParameter.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/OverzealousCasting.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ParallelLists.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PartiallyConstructedObjectAccess.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PoorlyDefinedParameter.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PossibleConstantAllocationInLoop.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PossibleIncompleteSerialization.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PossibleMemoryBloat.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PossibleUnsuspectedSerialization.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PossiblyRedundantMethodCalls.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ReflectionOnObjectMethods.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SQLInLoop.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/Section508Compliance.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SideEffectConstructor.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SillynessPotPourri.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SloppyClassReflection.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SluggishGui.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SpoiledChildInterfaceImplementor.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SpuriousThreadStates.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/StaticArrayCreatedInMethod.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/StaticMethodInstanceInvocation.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/StutteredMethodArguments.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SuspiciousCloneAlgorithm.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SuspiciousClusteredSessionSupport.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SuspiciousComparatorReturnValues.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SuspiciousGetterSetterUse.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SuspiciousJDKVersionUse.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SuspiciousNullGuard.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SuspiciousUninitializedArray.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SuspiciousWaitOnConcurrentObject.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SyncCollectionIterators.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/TailRecursion.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/TristateBooleanPattern.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/UnnecessaryNewNullCheck.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/UnnecessaryStoreBeforeReturn.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/UnrelatedCollectionContents.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/UnrelatedReturnValues.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/UseAddAll.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/UseCharacterParameterizedMethod.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/UseEnumCollections.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/UseSplit.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/UseToArray.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/UseVarArgs.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/WeakExceptionMessaging.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/WriteOnlyCollection.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/utils/AttributesUtils.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/utils/CodeByteUtils.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/utils/MapEntry.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/utils/RegisterUtils.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/utils/SignatureUtils.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/utils/VersionTransition.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/utils/XClassUtils.java
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/FBContrib.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/FBContrib.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/FBContrib.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/collect/CollectStatistics.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/collect/CollectStatistics.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/collect/CollectStatistics.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/collect/Statistics.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/collect/Statistics.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/collect/Statistics.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/AbnormalFinallyBlockReturn.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/AbnormalFinallyBlockReturn.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/AbnormalFinallyBlockReturn.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/AbstractClassEmptyMethods.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/AbstractClassEmptyMethods.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/AbstractClassEmptyMethods.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/AbstractOverriddenMethod.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/AbstractOverriddenMethod.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/AbstractOverriddenMethod.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ArrayBasedCollections.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ArrayBasedCollections.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ArrayBasedCollections.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ArrayWrappedCallByReference.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ArrayWrappedCallByReference.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ArrayWrappedCallByReference.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BloatedAssignmentScope.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BloatedAssignmentScope.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BloatedAssignmentScope.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BloatedSynchronizedBlock.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BloatedSynchronizedBlock.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BloatedSynchronizedBlock.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BogusExceptionDeclaration.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BogusExceptionDeclaration.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BogusExceptionDeclaration.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ClassEnvy.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ClassEnvy.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ClassEnvy.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ConfusingAutoboxedOverloading.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ConfusingAutoboxedOverloading.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ConfusingAutoboxedOverloading.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ConfusingFunctionSemantics.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ConfusingFunctionSemantics.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ConfusingFunctionSemantics.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ConstantListIndex.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ConstantListIndex.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ConstantListIndex.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ContraVariantArrayAssignment.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ContraVariantArrayAssignment.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ContraVariantArrayAssignment.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2010 Bhaskar Maddala
+ * Copyright (C) 2011 Bhaskar Maddala
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/CopiedOverriddenMethod.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/CopiedOverriddenMethod.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/CopiedOverriddenMethod.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/CustomBuiltXML.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/CustomBuiltXML.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/CustomBuiltXML.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/CyclomaticComplexity.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/CyclomaticComplexity.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/CyclomaticComplexity.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DateComparison.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DateComparison.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DateComparison.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DeclaredRuntimeException.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DeclaredRuntimeException.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DeclaredRuntimeException.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DeletingWhileIterating.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DeletingWhileIterating.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DeletingWhileIterating.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DeprecatedTypesafeEnumPattern.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DeprecatedTypesafeEnumPattern.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DeprecatedTypesafeEnumPattern.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DubiousListCollection.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DubiousListCollection.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DubiousListCollection.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DubiousSetOfCollections.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DubiousSetOfCollections.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/DubiousSetOfCollections.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ExceptionSoftening.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ExceptionSoftening.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ExceptionSoftening.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/FieldCouldBeLocal.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/FieldCouldBeLocal.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/FieldCouldBeLocal.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/FinalParameters.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/FinalParameters.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/FinalParameters.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/FloatingPointLoops.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/FloatingPointLoops.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/FloatingPointLoops.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ImproperPropertiesUse.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ImproperPropertiesUse.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ImproperPropertiesUse.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/InappropriateToStringUse.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/InappropriateToStringUse.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/InappropriateToStringUse.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/InconsistentKeyNameCasing.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/InconsistentKeyNameCasing.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/InconsistentKeyNameCasing.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/IncorrectInternalClassUse.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/IncorrectInternalClassUse.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/IncorrectInternalClassUse.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/InefficientStringBuffering.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/InefficientStringBuffering.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/InefficientStringBuffering.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/InheritanceTypeChecking.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/InheritanceTypeChecking.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/InheritanceTypeChecking.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/JDBCVendorReliance.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/JDBCVendorReliance.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/JDBCVendorReliance.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/JUnitAssertionOddities.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/JUnitAssertionOddities.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/JUnitAssertionOddities.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ListIndexedIterating.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ListIndexedIterating.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ListIndexedIterating.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/LiteralStringComparison.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/LiteralStringComparison.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/LiteralStringComparison.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/LocalSynchronizedCollection.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/LocalSynchronizedCollection.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/LocalSynchronizedCollection.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/LoggerOddities.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/LoggerOddities.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/LoggerOddities.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/LostExceptionStackTrace.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/LostExceptionStackTrace.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/LostExceptionStackTrace.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ManualArrayCopy.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ManualArrayCopy.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ManualArrayCopy.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/MethodReturnsConstant.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/MethodReturnsConstant.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/MethodReturnsConstant.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/MisleadingOverloadModel.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/MisleadingOverloadModel.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/MisleadingOverloadModel.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/MoreDumbMethods.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/MoreDumbMethods.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/MoreDumbMethods.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,7 +1,7 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Chris Peterson
- * Copyright (C) 2005-2010 Jean-Noel Rouvignac
+ * Copyright (C) 2005-2011 Chris Peterson
+ * Copyright (C) 2005-2011 Jean-Noel Rouvignac
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NeedlessAutoboxing.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NeedlessAutoboxing.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NeedlessAutoboxing.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NeedlessCustomSerialization.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NeedlessCustomSerialization.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NeedlessCustomSerialization.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NeedlessInstanceRetrieval.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NeedlessInstanceRetrieval.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NeedlessInstanceRetrieval.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NeedlessMemberCollectionSynchronization.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NeedlessMemberCollectionSynchronization.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NeedlessMemberCollectionSynchronization.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NonCollectionMethodUse.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NonCollectionMethodUse.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NonCollectionMethodUse.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NonFunctionalField.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NonFunctionalField.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NonFunctionalField.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NonOwnedSynchronization.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NonOwnedSynchronization.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NonOwnedSynchronization.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NonRecycleableTaglibs.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NonRecycleableTaglibs.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NonRecycleableTaglibs.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NonSymmetricEquals.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NonSymmetricEquals.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/NonSymmetricEquals.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/OrphanedDOMNode.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/OrphanedDOMNode.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/OrphanedDOMNode.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/OverlyConcreteParameter.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/OverlyConcreteParameter.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/OverlyConcreteParameter.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/OverzealousCasting.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/OverzealousCasting.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/OverzealousCasting.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ParallelLists.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ParallelLists.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ParallelLists.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PartiallyConstructedObjectAccess.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PartiallyConstructedObjectAccess.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PartiallyConstructedObjectAccess.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PoorlyDefinedParameter.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PoorlyDefinedParameter.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PoorlyDefinedParameter.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PossibleConstantAllocationInLoop.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PossibleConstantAllocationInLoop.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PossibleConstantAllocationInLoop.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PossibleIncompleteSerialization.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PossibleIncompleteSerialization.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PossibleIncompleteSerialization.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PossibleMemoryBloat.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PossibleMemoryBloat.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PossibleMemoryBloat.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PossibleUnsuspectedSerialization.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PossibleUnsuspectedSerialization.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PossibleUnsuspectedSerialization.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PossiblyRedundantMethodCalls.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PossiblyRedundantMethodCalls.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/PossiblyRedundantMethodCalls.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ReflectionOnObjectMethods.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ReflectionOnObjectMethods.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ReflectionOnObjectMethods.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SQLInLoop.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SQLInLoop.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SQLInLoop.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/Section508Compliance.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/Section508Compliance.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/Section508Compliance.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SideEffectConstructor.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SideEffectConstructor.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SideEffectConstructor.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SillynessPotPourri.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SillynessPotPourri.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SillynessPotPourri.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SloppyClassReflection.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SloppyClassReflection.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SloppyClassReflection.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SluggishGui.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SluggishGui.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SluggishGui.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SpoiledChildInterfaceImplementor.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SpoiledChildInterfaceImplementor.java 2011-03-01 06:59:30 UTC (rev 1652)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SpoiledChildInterfaceImplementor.java 2011-03-01 07:04:24 UTC (rev 1653)
@@ -1,6 +1,6 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
- * Copyright (C) 2005-2010 Dave Brosius
+ * Copyright (C) 2005-2011 Dave Brosius
*
* This library is free software; you can redistribute it and/or
* modify it und...
[truncated message content] |
|
From: <dbr...@us...> - 2011-03-01 06:59:37
|
Revision: 1652
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1652&view=rev
Author: dbrosius
Date: 2011-03-01 06:59:30 +0000 (Tue, 01 Mar 2011)
Log Message:
-----------
fix throwing of fields for BED
Modified Paths:
--------------
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BogusExceptionDeclaration.java
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BogusExceptionDeclaration.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BogusExceptionDeclaration.java 2011-03-01 06:46:30 UTC (rev 1651)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/BogusExceptionDeclaration.java 2011-03-01 06:59:30 UTC (rev 1652)
@@ -1,17 +1,17 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
* Copyright (C) 2005-2010 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
@@ -30,11 +30,12 @@
import edu.umd.cs.findbugs.BugInstance;
import edu.umd.cs.findbugs.BugReporter;
import edu.umd.cs.findbugs.BytecodeScanningDetector;
+import edu.umd.cs.findbugs.OpcodeStack;
import edu.umd.cs.findbugs.ba.ClassContext;
/**
* looks for constructors, private methods or static methods that declare that they
- * throw specific checked exceptions, but that do not. This just causes callers of
+ * throw specific checked exceptions, but that do not. This just causes callers of
* these methods to do extra work to handle an exception that will never be thrown.
*/
public class BogusExceptionDeclaration extends BytecodeScanningDetector {
@@ -50,41 +51,45 @@
safeClasses.add("java/lang/Double");
safeClasses.add("java/lang/Short");
safeClasses.add("java/lang/Boolean");
-
+
runtimeExceptionClass = Repository.lookupClass("java/lang/RuntimeException");
} catch (ClassNotFoundException cnfe) {
runtimeExceptionClass = null;
}
}
private final BugReporter bugReporter;
+ private OpcodeStack stack;
private Set<String> declaredCheckedExceptions;
-
+
public BogusExceptionDeclaration(BugReporter bugReporter) {
this.bugReporter = bugReporter;
}
-
-
+
+
@Override
public void visitClassContext(ClassContext classContext) {
try {
if (runtimeExceptionClass != null) {
+ stack = new OpcodeStack();
declaredCheckedExceptions = new HashSet<String>();
super.visitClassContext(classContext);
}
} finally {
declaredCheckedExceptions = null;
+ stack = null;
}
}
-
+
/**
* implements the visitor to see if the method declares that it throws any
* checked exceptions.
- *
+ *
* @param obj the context object of the currently parsed code block
*/
@Override
public void visitCode(Code obj) {
declaredCheckedExceptions.clear();
+ stack.resetForMethodEntry(this);
Method method = getMethod();
if (method.isStatic() || method.isPrivate() || (("<init>".equals(method.getName()) && !isAnonymousInnerCtor(method, getThisClass())))) {
ExceptionTable et = method.getExceptionTable();
@@ -116,7 +121,7 @@
}
}
}
-
+
/**
* checks to see if this method is constructor of an instance based inner class, as jdk1.5 compiler
* has a bug where it attaches bogus exception declarations to this constructors in some cases.
@@ -125,18 +130,20 @@
* @return whether this method is a ctor of an instance based anonymous inner class
*/
private boolean isAnonymousInnerCtor(Method m, JavaClass cls) {
- if (!"<init>".equals(m.getName()))
- return false;
-
+ if (!"<init>".equals(m.getName())) {
+ return false;
+ }
+
String clsName = cls.getClassName();
int dollarPos = clsName.lastIndexOf('$');
- if (dollarPos <0)
- return false;
-
+ if (dollarPos <0) {
+ return false;
+ }
+
String signature = m.getSignature();
return ("(L" + clsName.substring(0, dollarPos).replace('.', '/') + ";)V").equals(signature);
}
-
+
/**
* implements the visitor to look for method calls that could throw the exceptions
* that are listed in the declaration.
@@ -146,56 +153,68 @@
if (declaredCheckedExceptions.isEmpty()) {
return;
}
-
- if ((seen == INVOKEVIRTUAL)
- || (seen == INVOKEINTERFACE)
- || (seen == INVOKESPECIAL)
- || (seen == INVOKESTATIC)) {
- String clsName = getClassConstantOperand();
- if (!safeClasses.contains(clsName)) {
- try {
- JavaClass cls = Repository.lookupClass(clsName);
- Method[] methods = cls.getMethods();
- String methodName = getNameConstantOperand();
- String signature = getSigConstantOperand();
- boolean found = false;
- for (Method m : methods) {
- if (m.getName().equals(methodName) && m.getSignature().equals(signature)) {
- ExceptionTable et = m.getExceptionTable();
- if (et != null) {
- String[] thrownExceptions = et.getExceptionNames();
- for (String thrownException : thrownExceptions) {
- declaredCheckedExceptions.remove(thrownException);
- JavaClass exCls = Repository.lookupClass(thrownException);
- JavaClass superCls = exCls.getSuperClass();
- do {
- exCls = superCls;
- if (exCls != null) {
- declaredCheckedExceptions.remove(exCls.getClassName());
- superCls = exCls.getSuperClass();
- } else {
- break;
- }
- } while (!declaredCheckedExceptions.isEmpty() && !"java.lang.Exception".equals(exCls.getClassName()) && !"java.lang.Error".equals(exCls.getClassName()));
-
+
+ try {
+
+ if ((seen == INVOKEVIRTUAL)
+ || (seen == INVOKEINTERFACE)
+ || (seen == INVOKESPECIAL)
+ || (seen == INVOKESTATIC)) {
+ String clsName = getClassConstantOperand();
+ if (!safeClasses.contains(clsName)) {
+ try {
+ JavaClass cls = Repository.lookupClass(clsName);
+ Method[] methods = cls.getMethods();
+ String methodName = getNameConstantOperand();
+ String signature = getSigConstantOperand();
+ boolean found = false;
+ for (Method m : methods) {
+ if (m.getName().equals(methodName) && m.getSignature().equals(signature)) {
+ ExceptionTable et = m.getExceptionTable();
+ if (et != null) {
+ String[] thrownExceptions = et.getExceptionNames();
+ for (String thrownException : thrownExceptions) {
+ declaredCheckedExceptions.remove(thrownException);
+ JavaClass exCls = Repository.lookupClass(thrownException);
+ JavaClass superCls = exCls.getSuperClass();
+ do {
+ exCls = superCls;
+ if (exCls != null) {
+ declaredCheckedExceptions.remove(exCls.getClassName());
+ superCls = exCls.getSuperClass();
+ } else {
+ break;
+ }
+ } while (!declaredCheckedExceptions.isEmpty() && !"java.lang.Exception".equals(exCls.getClassName()) && !"java.lang.Error".equals(exCls.getClassName()));
+
+ }
+ } else {
+ declaredCheckedExceptions.clear();
}
- } else {
- declaredCheckedExceptions.clear();
+ found = true;
+ break;
}
- found = true;
- break;
}
+
+ if (!found) {
+ declaredCheckedExceptions.clear();
+ }
}
-
- if (!found) {
+ catch (ClassNotFoundException cnfe) {
+ bugReporter.reportMissingClass(cnfe);
declaredCheckedExceptions.clear();
}
}
- catch (ClassNotFoundException cnfe) {
- bugReporter.reportMissingClass(cnfe);
- declaredCheckedExceptions.clear();
+ } else if (seen == ATHROW) {
+ if (stack.getStackDepth() > 0) {
+ OpcodeStack.Item item = stack.getStackItem(0);
+ String exSig = item.getSignature();
+ String exClass = exSig.substring(1, exSig.length() - 1).replaceAll("/", ".");
+ declaredCheckedExceptions.remove(exClass);
}
}
+ } finally {
+ stack.sawOpcode(this, seen);
}
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <dbr...@us...> - 2011-03-01 06:46:36
|
Revision: 1651
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1651&view=rev
Author: dbrosius
Date: 2011-03-01 06:46:30 +0000 (Tue, 01 Mar 2011)
Log Message:
-----------
add fp for BED
Modified Paths:
--------------
trunk/fb-contrib/samples/BED_Sample.java
Modified: trunk/fb-contrib/samples/BED_Sample.java
===================================================================
--- trunk/fb-contrib/samples/BED_Sample.java 2011-01-22 01:20:16 UTC (rev 1650)
+++ trunk/fb-contrib/samples/BED_Sample.java 2011-03-01 06:46:30 UTC (rev 1651)
@@ -12,40 +12,55 @@
@SuppressWarnings("all")
-public class BED_Sample
+public class BED_Sample
{
+ IOException ioe;
+
public BED_Sample() throws IOException
{
-
+
}
-
+
public BED_Sample(String name) throws NamingException
{
Hashtable<String, String> env = new Hashtable<String, String>();
env.put("name", name);
DirContext context = new InitialDirContext(env);
}
-
+
private void badThrow() throws SQLException
{
-
+
}
-
+
public static void badStatic() throws DataFormatException
{
-
+
}
-
+
public static void doIt() throws SQLException, IOException
{
InputStream is = new FileInputStream("c:\\temp.txt");
}
-
+
public static void fp() throws Exception
{
InputStream is = new FileInputStream("c:\\temp.txt");
}
-
+
+ private void fpThrowField(boolean b) throws IOException
+ {
+ if (b)
+ {
+ throw ioe;
+ }
+ else
+ {
+ IOException e = ioe;
+ throw ioe;
+ }
+ }
+
public Object iAmCreatingAnObject() {
return new Object() {
private byte[] iHaveToThrowAnException() throws IOException {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <dbr...@us...> - 2011-01-22 01:20:22
|
Revision: 1650
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1650&view=rev
Author: dbrosius
Date: 2011-01-22 01:20:16 +0000 (Sat, 22 Jan 2011)
Log Message:
-----------
clone() is declared protected so don't report reflection on clone()
Modified Paths:
--------------
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ReflectionOnObjectMethods.java
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ReflectionOnObjectMethods.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ReflectionOnObjectMethods.java 2010-12-13 00:09:47 UTC (rev 1649)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/ReflectionOnObjectMethods.java 2011-01-22 01:20:16 UTC (rev 1650)
@@ -1,17 +1,17 @@
/*
* fb-contrib - Auxiliary detectors for Java programs
* Copyright (C) 2005-2010 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
@@ -36,33 +36,33 @@
import edu.umd.cs.findbugs.ba.ClassContext;
/**
- * looks for method calls through reflection on methods found in
+ * looks for method calls through reflection on methods found in
* java.lang.Object. As these methods are always available, there's no
* reason to do this.
*/
public class ReflectionOnObjectMethods extends BytecodeScanningDetector {
-
+
private static final Set<String> objectSigs = new HashSet<String>();
static {
- objectSigs.add("clone()");
+ //objectSigs.add("clone()"); // clone is declared protected
objectSigs.add("equals(Ljava/lang/Object;)");
objectSigs.add("finalize()");
objectSigs.add("getClass()");
objectSigs.add("hashCode()");
- objectSigs.add("notify()");
+ objectSigs.add("notify()");
objectSigs.add("notifyAll()");
objectSigs.add("toString()");
objectSigs.add("wait");
objectSigs.add("wait(J)");
objectSigs.add("wait(JI");
-
+
}
- private BugReporter bugReporter;
+ private final BugReporter bugReporter;
private OpcodeStack stack;
private Map<Integer, String[]> localClassTypes;
private Map<String, String[]> fieldClassTypes;
-
+
/**
* constructs a ROOM detector given the reporter to report bugs on
* @param bugReporter the sync of bug reports
@@ -70,11 +70,11 @@
public ReflectionOnObjectMethods(BugReporter bugReporter) {
this.bugReporter = bugReporter;
}
-
+
/**
* implements the visitor to create the stack and local and field maps
* for Class arrays to be used for getting the reflection method
- *
+ *
* @param classContext the context object of the currently parse class
*/
@Override
@@ -89,7 +89,7 @@
setupVisitorForClass(cls);
doVisitMethod(staticInit);
}
-
+
super.visitClassContext(classContext);
} finally {
stack = null;
@@ -97,10 +97,10 @@
fieldClassTypes = null;
}
}
-
+
/**
* implements the visitor to reset the opcode stack and clear the local variable map@
- *
+ *
* @param obj the context object of the currently parsed code block
*/
@Override
@@ -109,18 +109,18 @@
localClassTypes.clear();
super.visitCode(obj);
}
-
+
/**
* implements the visitor to look for calls that invoke a method through reflection
* where the method is defined in java.lang.Object
- *
+ *
* @param seen the currently parsed opcode
*/
@Override
public void sawOpcode(int seen) {
Integer arraySize = null;
String[] loadedTypes = null;
-
+
try {
switch (seen) {
case ANEWARRAY: {
@@ -132,7 +132,7 @@
}
}
break;
-
+
case AASTORE: {
if (stack.getStackDepth() >= 3) {
OpcodeStack.Item arrayItem = stack.getStackItem(2);
@@ -151,7 +151,7 @@
}
}
break;
-
+
case PUTFIELD:
case PUTSTATIC: {
String name = getNameConstantOperand();
@@ -166,14 +166,14 @@
fieldClassTypes.remove(name);
}
break;
-
+
case GETFIELD:
case GETSTATIC: {
String name = getNameConstantOperand();
- loadedTypes = fieldClassTypes.get(name);
+ loadedTypes = fieldClassTypes.get(name);
}
break;
-
+
case ASTORE_0:
case ASTORE_1:
case ASTORE_2:
@@ -191,17 +191,17 @@
localClassTypes.remove(reg);
}
break;
-
+
case ALOAD_0:
case ALOAD_1:
case ALOAD_2:
case ALOAD_3:
case ALOAD: {
int reg = RegisterUtils.getAStoreReg(this, seen);
- loadedTypes = localClassTypes.get(Integer.valueOf(reg));
- }
+ loadedTypes = localClassTypes.get(Integer.valueOf(reg));
+ }
break;
-
+
case INVOKEVIRTUAL: {
String cls = getClassConstantOperand();
if ("java/lang/Class".equals(cls)) {
@@ -258,14 +258,14 @@
}
}
}
-
+
/**
* builds a string that represents the signature of the method call that is being
* executed though reflection.
- *
+ *
* @param methodName the method name
* @param parmTypes the array of parameter types of the method
- *
+ *
* @return a signature string minus the return type
*/
private String buildReflectionSignature(String methodName, String[] parmTypes) {
@@ -273,25 +273,26 @@
sb.append(methodName);
sb.append("(");
if (parmTypes != null) {
- for (int i = 0; i < parmTypes.length; i++) {
+ for (String type : parmTypes) {
sb.append("L");
- String type = parmTypes[i];
- if (type == null)
+ if (type == null) {
return "";
+ }
sb.append(type);
- if ((type.length() > 1) || ("IJ".indexOf(type) < 0))
+ if ((type.length() > 1) || ("IJ".indexOf(type) < 0)) {
sb.append(";");
+ }
}
}
sb.append(")");
return sb.toString();
}
-
+
/**
* finds the method that is the static initializer for the class
- *
+ *
* @param cls the class to find the initializer for
- *
+ *
* @return the Method of the static initializer or null if this class has none
*/
private Method findStaticInitializer(JavaClass cls) {
@@ -301,7 +302,7 @@
return m;
}
}
-
+
return null;
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <dbr...@us...> - 2010-12-13 00:09:54
|
Revision: 1649
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1649&view=rev
Author: dbrosius
Date: 2010-12-13 00:09:47 +0000 (Mon, 13 Dec 2010)
Log Message:
-----------
add includeantruntime to quell warnings
Modified Paths:
--------------
trunk/fb-contrib/build.xml
Modified: trunk/fb-contrib/build.xml
===================================================================
--- trunk/fb-contrib/build.xml 2010-12-09 05:04:52 UTC (rev 1648)
+++ trunk/fb-contrib/build.xml 2010-12-13 00:09:47 UTC (rev 1649)
@@ -70,7 +70,8 @@
source="${javac.source}"
target="${javac.target}"
deprecation="${javac.deprecation}"
- debug="${javac.debug}">
+ debug="${javac.debug}"
+ includeantruntime="false">
<classpath refid="fb-contrib.classpath"/>
</javac>
</target>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <dbr...@us...> - 2010-12-09 05:04:58
|
Revision: 1648
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1648&view=rev
Author: dbrosius
Date: 2010-12-09 05:04:52 +0000 (Thu, 09 Dec 2010)
Log Message:
-----------
better PL_PARALLEL_LISTS bug pattern message
Modified Paths:
--------------
trunk/fb-contrib/etc/messages.xml
Modified: trunk/fb-contrib/etc/messages.xml
===================================================================
--- trunk/fb-contrib/etc/messages.xml 2010-11-24 23:16:31 UTC (rev 1647)
+++ trunk/fb-contrib/etc/messages.xml 2010-12-09 05:04:52 UTC (rev 1648)
@@ -1351,7 +1351,8 @@
<![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>
+ pieces of information, and adding instances of this class to just one list or array, or if just two values, use
+ a Map to associate one value with the other.</p>
]]>
</Details>
</BugPattern>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <dbr...@us...> - 2010-11-24 23:16:37
|
Revision: 1647
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1647&view=rev
Author: dbrosius
Date: 2010-11-24 23:16:31 +0000 (Wed, 24 Nov 2010)
Log Message:
-----------
add fp sample for WOC and fix it
Modified Paths:
--------------
trunk/fb-contrib/samples/WOC_Sample.java
trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/WriteOnlyCollection.java
Modified: trunk/fb-contrib/samples/WOC_Sample.java
===================================================================
--- trunk/fb-contrib/samples/WOC_Sample.java 2010-11-24 05:59:04 UTC (rev 1646)
+++ trunk/fb-contrib/samples/WOC_Sample.java 2010-11-24 23:16:31 UTC (rev 1647)
@@ -1,10 +1,10 @@
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
+import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedHashSet;
import java.util.LinkedList;
-import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.Vector;
@@ -70,6 +70,15 @@
}
}
+ public Set<String> testFPTrinary(boolean b)
+ {
+ Set<String> s = new HashSet<String>();
+ s.add("foo");
+ s.add("bar");
+
+ return b ? s : Collections.<String>emptySet();
+ }
+
private void helper(int i, Map<String, String> x)
{
}
Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/WriteOnlyCollection.java
===================================================================
--- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/WriteOnlyCollection.java 2010-11-24 05:59:04 UTC (rev 1646)
+++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/WriteOnlyCollection.java 2010-11-24 23:16:31 UTC (rev 1647)
@@ -312,6 +312,16 @@
}
}
break;
+
+ case GOTO:
+ if (stack.getStackDepth() > 0) {
+ OpcodeStack.Item item = stack.getStackItem(0);
+ Object uo = item.getUserValue();
+ if (!(uo instanceof Boolean)) {
+ clearUserValue(item);
+ }
+ }
+ break;
}
} finally {
stack.sawOpcode(this, seen);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <dbr...@us...> - 2010-11-24 05:59:11
|
Revision: 1646
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1646&view=rev
Author: dbrosius
Date: 2010-11-24 05:59:04 +0000 (Wed, 24 Nov 2010)
Log Message:
-----------
add sonatype parent
Modified Paths:
--------------
trunk/fb-contrib/pom.xml
Modified: trunk/fb-contrib/pom.xml
===================================================================
--- trunk/fb-contrib/pom.xml 2010-11-24 05:39:00 UTC (rev 1645)
+++ trunk/fb-contrib/pom.xml 2010-11-24 05:59:04 UTC (rev 1646)
@@ -8,8 +8,14 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.mebigfatguy.fb-contrib</groupId>
<artifactId>fb-contrib</artifactId>
- <version>4.6.0-SNAPSHOT</version>
+ <version>4.7.0-SNAPSHOT</version>
+ <parent>
+ <groupId>org.sonatype.oss</groupId>
+ <artifactId>oss-parent</artifactId>
+ <version>5</version>
+ </parent>
+
<name>FindBugs Contrib plugin library</name>
<description>An auxiliary findbugs.sourceforge.net plugin for java bug detectors that fall outside the narrow scope of detectors to be packaged with the product itself.</description>
<url>http://fb-contrib.mebigfatguy.com</url>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <dbr...@us...> - 2010-11-24 05:39:06
|
Revision: 1645
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1645&view=rev
Author: dbrosius
Date: 2010-11-24 05:39:00 +0000 (Wed, 24 Nov 2010)
Log Message:
-----------
[maven-release-plugin] prepare for next development iteration
Modified Paths:
--------------
tags/v4_6_0/pom.xml
Modified: tags/v4_6_0/pom.xml
===================================================================
--- tags/v4_6_0/pom.xml 2010-11-24 05:38:51 UTC (rev 1644)
+++ tags/v4_6_0/pom.xml 2010-11-24 05:39:00 UTC (rev 1645)
@@ -5,7 +5,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.mebigfatguy.fb-contrib</groupId>
<artifactId>fb-contrib</artifactId>
- <version>4.6.0</version>
+ <version>4.7.0-SNAPSHOT</version>
<parent>
<groupId>org.sonatype.oss</groupId>
@@ -51,9 +51,9 @@
</licenses>
<scm>
- <connection>scm:svn:https://fb-contrib.svn.sourceforge.net/svnroot/fb-contrib/tags/4.6.0</connection>
- <developerConnection>scm:svn:https://fb-contrib.svn.sourceforge.net/svnroot/fb-contrib/tags/4.6.0</developerConnection>
- <url>http://fb-contrib.svn.sourceforge.net/viewvc/fb-contrib/tags/4.6.0</url>
+ <connection>scm:svn:https://fb-contrib.svn.sourceforge.net/svnroot/fb-contrib/trunk/</connection>
+ <developerConnection>scm:svn:https://fb-contrib.svn.sourceforge.net/svnroot/fb-contrib/trunk/</developerConnection>
+ <url>http://fb-contrib.svn.sourceforge.net/viewvc/fb-contrib/trunk/</url>
</scm>
<mailingLists>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <dbr...@us...> - 2010-11-24 05:38:57
|
Revision: 1644
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1644&view=rev
Author: dbrosius
Date: 2010-11-24 05:38:51 +0000 (Wed, 24 Nov 2010)
Log Message:
-----------
[maven-release-plugin] copy for tag 4.6.0
Added Paths:
-----------
tags/4.6.0/
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <dbr...@us...> - 2010-11-24 05:38:42
|
Revision: 1643
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1643&view=rev
Author: dbrosius
Date: 2010-11-24 05:38:36 +0000 (Wed, 24 Nov 2010)
Log Message:
-----------
[maven-release-plugin] prepare release 4.6.0
Modified Paths:
--------------
tags/v4_6_0/pom.xml
Modified: tags/v4_6_0/pom.xml
===================================================================
--- tags/v4_6_0/pom.xml 2010-11-24 05:36:18 UTC (rev 1642)
+++ tags/v4_6_0/pom.xml 2010-11-24 05:38:36 UTC (rev 1643)
@@ -5,7 +5,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.mebigfatguy.fb-contrib</groupId>
<artifactId>fb-contrib</artifactId>
- <version>4.6.0-SNAPSHOT</version>
+ <version>4.6.0</version>
<parent>
<groupId>org.sonatype.oss</groupId>
@@ -51,9 +51,9 @@
</licenses>
<scm>
- <connection>scm:svn:https://fb-contrib.svn.sourceforge.net/svnroot/fb-contrib/trunk/</connection>
- <developerConnection>scm:svn:https://fb-contrib.svn.sourceforge.net/svnroot/fb-contrib/trunk/</developerConnection>
- <url>http://fb-contrib.svn.sourceforge.net/viewvc/fb-contrib/trunk/</url>
+ <connection>scm:svn:https://fb-contrib.svn.sourceforge.net/svnroot/fb-contrib/tags/4.6.0</connection>
+ <developerConnection>scm:svn:https://fb-contrib.svn.sourceforge.net/svnroot/fb-contrib/tags/4.6.0</developerConnection>
+ <url>http://fb-contrib.svn.sourceforge.net/viewvc/fb-contrib/tags/4.6.0</url>
</scm>
<mailingLists>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <dbr...@us...> - 2010-11-24 05:36:24
|
Revision: 1642
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1642&view=rev
Author: dbrosius
Date: 2010-11-24 05:36:18 +0000 (Wed, 24 Nov 2010)
Log Message:
-----------
-v4.6.0
Modified Paths:
--------------
tags/v4_6_0/pom.xml
Modified: tags/v4_6_0/pom.xml
===================================================================
--- tags/v4_6_0/pom.xml 2010-11-24 05:30:53 UTC (rev 1641)
+++ tags/v4_6_0/pom.xml 2010-11-24 05:36:18 UTC (rev 1642)
@@ -5,7 +5,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.mebigfatguy.fb-contrib</groupId>
<artifactId>fb-contrib</artifactId>
- <version>4.6.0</version>
+ <version>4.6.0-SNAPSHOT</version>
<parent>
<groupId>org.sonatype.oss</groupId>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <dbr...@us...> - 2010-11-24 05:30:59
|
Revision: 1641
http://fb-contrib.svn.sourceforge.net/fb-contrib/?rev=1641&view=rev
Author: dbrosius
Date: 2010-11-24 05:30:53 +0000 (Wed, 24 Nov 2010)
Log Message:
-----------
[maven-release-plugin] prepare for next development iteration
Modified Paths:
--------------
tags/v4_6_0/pom.xml
Modified: tags/v4_6_0/pom.xml
===================================================================
--- tags/v4_6_0/pom.xml 2010-11-24 05:30:46 UTC (rev 1640)
+++ tags/v4_6_0/pom.xml 2010-11-24 05:30:53 UTC (rev 1641)
@@ -51,9 +51,9 @@
</licenses>
<scm>
- <connection>scm:svn:https://fb-contrib.svn.sourceforge.net/svnroot/fb-contrib/tags/fb-contrib-4.6.0</connection>
- <developerConnection>scm:svn:https://fb-contrib.svn.sourceforge.net/svnroot/fb-contrib/tags/fb-contrib-4.6.0</developerConnection>
- <url>http://fb-contrib.svn.sourceforge.net/viewvc/fb-contrib/tags/fb-contrib-4.6.0</url>
+ <connection>scm:svn:https://fb-contrib.svn.sourceforge.net/svnroot/fb-contrib/trunk/</connection>
+ <developerConnection>scm:svn:https://fb-contrib.svn.sourceforge.net/svnroot/fb-contrib/trunk/</developerConnection>
+ <url>http://fb-contrib.svn.sourceforge.net/viewvc/fb-contrib/trunk/</url>
</scm>
<mailingLists>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|