SpotBugs Bug Detector Report
The following document contains the results of SpotBugs
SpotBugs Version is 4.8.3
Threshold is medium
Effort is default
Summary
Classes | Bugs | Errors | Missing Classes |
---|---|---|---|
33 | 51 | 0 | 0 |
Files
AbstractMissingHashCode$Concrete
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
AbstractMissingHashCode$Concrete.equals(Object) is unusual | STYLE | EQ_UNUSUAL | 33-36 | Medium |
Unused public or protected field: AbstractMissingHashCode$Concrete.z | STYLE | UUF_UNUSED_PUBLIC_OR_PROTECTED_FIELD | Not available | Medium |
AbstractMissingHashCode$ConcreteMissingEquals
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
AbstractMissingHashCode$ConcreteMissingEquals doesn't override AbstractMissingHashCode$Concrete.equals(Object) | STYLE | EQ_DOESNT_OVERRIDE_EQUALS | 1 | Medium |
Unused field: AbstractMissingHashCode$ConcreteMissingEquals.z | PERFORMANCE | UUF_UNUSED_FIELD | Not available | Medium |
AbstractMissingHashCode$StillMissingHashCode
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
AbstractMissingHashCode$StillMissingHashCode inherits equals and uses Object.hashCode() | BAD_PRACTICE | HE_INHERITS_EQUALS_USE_HASHCODE | 16 | Medium |
Unused field: AbstractMissingHashCode$StillMissingHashCode.y | PERFORMANCE | UUF_UNUSED_FIELD | Not available | Medium |
AccidentalNonConstructorInInnerClass$DoNotReport
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Should AccidentalNonConstructorInInnerClass$DoNotReport be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 21-24 | Medium |
AccidentalNonConstructorInInnerClass$Report
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Should AccidentalNonConstructorInInnerClass$Report be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 3-5 | Medium |
AppendingToAnObjectOutputStream
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Doomed attempt to append to an object output stream in AppendingToAnObjectOutputStream.appendObject1(File, Object) | CORRECTNESS | IO_APPENDING_TO_OBJECT_OUTPUT_STREAM | 14 | High |
Doomed attempt to append to an object output stream in AppendingToAnObjectOutputStream.appendObject2(File, Object) | CORRECTNESS | IO_APPENDING_TO_OBJECT_OUTPUT_STREAM | 21 | High |
Doomed attempt to append to an object output stream in AppendingToAnObjectOutputStream.appendObject3(String, Object) | CORRECTNESS | IO_APPENDING_TO_OBJECT_OUTPUT_STREAM | 28 | High |
Doomed attempt to append to an object output stream in AppendingToAnObjectOutputStream.appendObject4(String, Object) | CORRECTNESS | IO_APPENDING_TO_OBJECT_OUTPUT_STREAM | 35 | High |
ArrayToString
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Invocation of toString on an unnamed array in ArrayToString.print2() | CORRECTNESS | DMI_INVOKING_TOSTRING_ON_ANONYMOUS_ARRAY | 28 | Medium |
Invocation of toString on ? in ArrayToString.print0(String[]) | CORRECTNESS | DMI_INVOKING_TOSTRING_ON_ARRAY | 17 | Medium |
Invocation of toString on ? in ArrayToString.print1() | CORRECTNESS | DMI_INVOKING_TOSTRING_ON_ARRAY | 23 | Medium |
Invocation of toString on gargs in ArrayToString.print3() | CORRECTNESS | DMI_INVOKING_TOSTRING_ON_ARRAY | 33 | Medium |
AssumeUnsignedBytes
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Bad comparison of signed byte with 200 in AssumeUnsignedBytes.find200(byte[]) | CORRECTNESS | INT_BAD_COMPARISON_WITH_SIGNED_BYTE | 8 | High |
UseOfNonHashableClassInHashDataStructure
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
UseOfNonHashableClassInHashDataStructure.equals(Object) is unusual | STYLE | EQ_UNUSUAL | 16 | Medium |
UseOfNonHashableClassInHashDataStructure defines equals and uses Object.hashCode() | BAD_PRACTICE | HE_EQUALS_USE_HASHCODE | 16 | High |
UseOfNonHashableClassInHashDataStructure doesn't define a hashCode() method but is used in a hashed data structure in UseOfNonHashableClassInHashDataStructure.get(UseOfNonHashableClassInHashDataStructure) | CORRECTNESS | HE_USE_OF_UNHASHABLE_CLASS | 24 | High |
UseOfNonHashableClassInHashDataStructure.equals(Object) does not check for null argument | BAD_PRACTICE | NP_EQUALS_SHOULD_HANDLE_NULL_ARGUMENT | 16 | Medium |
UseOfNonHashableClassInHashDataStructure$UMap
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
UseOfNonHashableClassInHashDataStructure doesn't define a hashCode() method but it is used in a hashed context in UseOfNonHashableClassInHashDataStructure$UMap | CORRECTNESS | HE_SIGNATURE_DECLARES_HASHING_OF_UNHASHABLE_CLASS | 5 | High |
UselessAssignments
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to $L2 in new UselessAssignments(int, int) | STYLE | DLS_DEAD_LOCAL_STORE | 17 | Medium |
Overwritten increment in UselessAssignments.oops() | CORRECTNESS | DLS_OVERWRITTEN_INCREMENT | 30 | High |
Double assignment of field g1 in new UselessAssignments(int, int) | STYLE | SA_FIELD_DOUBLE_ASSIGNMENT | 18 | Medium |
Double assignment of field foo in UselessAssignments.oops() | STYLE | SA_FIELD_DOUBLE_ASSIGNMENT | 31 | Medium |
Double assignment of field foo in UselessAssignments.report(UselessAssignments, UselessAssignments) | STYLE | SA_FIELD_DOUBLE_ASSIGNMENT | 37 | Medium |
Double assignment of field bar in UselessAssignments.setFoo(UselessAssignments, UselessAssignments) | STYLE | SA_FIELD_DOUBLE_ASSIGNMENT | 24 | Medium |
Self assignment of field foo in new UselessAssignments(int, int) | CORRECTNESS | SA_FIELD_SELF_ASSIGNMENT | 16 | High |
Self assignment of field foo in UselessAssignments.oops() | CORRECTNESS | SA_FIELD_SELF_ASSIGNMENT | 31 | High |
Double assignment of $L3 in new UselessAssignments(int, int) | STYLE | SA_LOCAL_DOUBLE_ASSIGNMENT | 19 | Medium |
Self assignment of $L2 in new UselessAssignments(int, int) | STYLE | SA_LOCAL_SELF_ASSIGNMENT | 17 | Medium |
Unread field: UselessAssignments.bar | PERFORMANCE | URF_UNREAD_FIELD | 24 | Medium |
Unread field: UselessAssignments.g1 | PERFORMANCE | URF_UNREAD_FIELD | 18 | Medium |
Uninitialized read of foo in new UselessAssignments(int, int) | CORRECTNESS | UR_UNINIT_READ | 16 | High |
Unused field: UselessAssignments.g2 | PERFORMANCE | UUF_UNUSED_FIELD | Not available | Medium |
UselessControlFlow
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Useless control flow in UselessControlFlow.report0(Object, Object) | STYLE | UCF_USELESS_CONTROL_FLOW | 14 | Medium |
Useless control flow in UselessControlFlow.report1(Object, Object) | STYLE | UCF_USELESS_CONTROL_FLOW | 21 | Medium |
Method UselessControlFlow.report4(Object[], Object) seems to be useless | STYLE | UC_USELESS_VOID_METHOD | 48 | Medium |
UselessCurrentThread
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to $L1 in UselessCurrentThread.test4() | STYLE | DLS_DEAD_LOCAL_STORE | 42 | Medium |
new UselessCurrentThread(Thread) may expose internal representation by storing an externally mutable object into unknownThread | MALICIOUS_CODE | EI_EXPOSE_REP2 | 12 | Medium |
UselessCurrentThread.test4() invokes static Thread.interrupted() method on thread instance | CORRECTNESS | STI_INTERRUPTED_ON_UNKNOWNTHREAD | 43 | Medium |
UselessCurrentThread.test5() invokes static Thread.interrupted() method on thread instance | CORRECTNESS | STI_INTERRUPTED_ON_UNKNOWNTHREAD | 52 | Medium |
UselessFinalize
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
UselessFinalize.finalize() does nothing except call super.finalize(); delete it | BAD_PRACTICE | FI_USELESS | 4-5 | Medium |
UserMistakes
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to $L3 in UserMistakes.main(String[]) | STYLE | DLS_DEAD_LOCAL_STORE | 28 | Medium |
Hard coded reference to an absolute pathname in UserMistakes.main(String[]) | STYLE | DMI_HARDCODED_ABSOLUTE_FILENAME | 26 | Medium |
Found reliance on default encoding in UserMistakes.main(String[]): new java.io.FileReader(String) | I18N | DM_DEFAULT_ENCODING | 26 | High |
"." or "|" used for regular expression in UserMistakes.main(String[]) | CORRECTNESS | RE_POSSIBLE_UNINTENDED_PATTERN | 14 | Medium |
UserMistakes.main(String[]) discards result of readLine after checking if it is non-null | STYLE | RV_DONT_JUST_NULL_CHECK_READLINE | 27 | Medium |
org.codehaus.mojo.spotbugsmavenplugin.it.App
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.codehaus.mojo.spotbugsmavenplugin.it.App.clone() does not call super.clone() | BAD_PRACTICE | CN_IDIOM_NO_SUPER_CALL | 29 | Medium |
org.codehaus.mojo.spotbugsmavenplugin.it.App.clone() may return null | BAD_PRACTICE | NP_CLONE_COULD_RETURN_NULL | 29 | Medium |