The following document contains the results of FindBugs Report
FindBugs Version is 1.3.9
Threshold is medium
Effort is min
| Classes | Bugs | Errors | Missing Classes |
|---|---|---|---|
| 80 | 18 | 0 | 0 |
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Class net.sf.jour.ConfigException is not derived from an Exception, even though it is named as such | BAD_PRACTICE | NM_CLASS_NOT_EXCEPTION | 32-37 | Medium |
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| new net.sf.jour.Interceptor(Config, ClassPool, String, Instrumentor[]) may expose internal representation by storing an externally mutable object into Interceptor.instrumentors | MALICIOUS_CODE | EI_EXPOSE_REP2 | 69 | Medium |
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Class net.sf.jour.InterceptorException is not derived from an Exception, even though it is named as such | BAD_PRACTICE | NM_CLASS_NOT_EXCEPTION | 31-36 | Medium |
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| net.sf.jour.processor.DirectoryOutputWriter.write(Entry) ignores exceptional return value of java.io.File.mkdirs() | BAD_PRACTICE | RV_RETURN_VALUE_IGNORED_BAD_PRACTICE | 30 | Medium |
| net.sf.jour.processor.DirectoryOutputWriter.write(Entry) ignores exceptional return value of java.io.File.setLastModified(long) | BAD_PRACTICE | RV_RETURN_VALUE_IGNORED_BAD_PRACTICE | 48 | Medium |
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| net.sf.jour.processor.FileEntry defines equals and uses Object.hashCode() | BAD_PRACTICE | HE_EQUALS_USE_HASHCODE | 48-51 | High |
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Method net.sf.jour.signature.APICompare.compareFields(CtField[], CtField[], String, CtClass, CtClass) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 479 | Medium |
| Method net.sf.jour.signature.APICompare.compareMethods(CtMethod[], CtMethod[], String) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 427 | Medium |
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| net.sf.jour.signature.APICompareChangeHelper.assertEquals(String, boolean, boolean) invokes inefficient Boolean constructor; use Boolean.valueOf(...) instead | PERFORMANCE | DM_BOOLEAN_CTOR | 98 | Medium |
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| net.sf.jour.signature.APICompareChangeHelper$ModifiersValue defines equals and uses Object.hashCode() | BAD_PRACTICE | HE_EQUALS_USE_HASHCODE | 47-50 | Medium |
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| net.sf.jour.signature.Generator$ClassSortComparator implements Comparator but not Serializable | BAD_PRACTICE | SE_COMPARATOR_SHOULD_BE_SERIALIZABLE | 179-182 | Medium |
| Bug | Category | Details | Line | Priority |
|---|
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Dead store to name in net.sf.jour.util.CmdArgs.isArgsName(String) | STYLE | DLS_DEAD_LOCAL_STORE | 23 | High |
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| net.sf.jour.util.FileUtil.readTextFile(File, HashSet) may fail to close stream | BAD_PRACTICE | OS_OPEN_STREAM | 151 | Medium |
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| net.sf.jour.util.FileUtil$FileListByDateComparator implements Comparator but not Serializable | BAD_PRACTICE | SE_COMPARATOR_SHOULD_BE_SERIALIZABLE | 194-212 | Medium |
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| net.sf.jour.util.FileUtil$FileListByNameComparator implements Comparator but not Serializable | BAD_PRACTICE | SE_COMPARATOR_SHOULD_BE_SERIALIZABLE | 219-232 | Medium |
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Call to method of static java.text.DateFormat in net.sf.jour.util.TimeUtil.timeStamp2dateString(double) | MT_CORRECTNESS | STCAL_INVOKE_ON_STATIC_DATE_FORMAT_INSTANCE | 150 | Medium |