SpotBugs Bug Detector Report
The following document contains the results of SpotBugs
SpotBugs Version is 4.9.8
Threshold is medium
Effort is default
Summary
| Classes |
Bugs |
Errors |
Missing Classes |
| 30 |
23 |
0 |
0 |
nl.tudelft.simulation.dsol.animation.StaticLocation2d
| Bug |
Category |
Details |
Line |
Priority |
| nl.tudelft.simulation.dsol.animation.StaticLocation2d doesn't override org.djutils.draw.point.DirectedPoint2d.equals(Object) |
STYLE |
EQ_DOESNT_OVERRIDE_EQUALS |
1 |
Medium |
nl.tudelft.simulation.dsol.animation.StaticLocation3d
| Bug |
Category |
Details |
Line |
Priority |
| nl.tudelft.simulation.dsol.animation.StaticLocation3d doesn't override org.djutils.draw.point.OrientedPoint3d.equals(Object) |
STYLE |
EQ_DOESNT_OVERRIDE_EQUALS |
1 |
Medium |
nl.tudelft.simulation.dsol.animation.d2.ImageRenderable
| Bug |
Category |
Details |
Line |
Priority |
| Shared primitive variable "orientation" in one thread may not yield the value of the most recent write from another thread |
MT_CORRECTNESS |
AT_STALE_THREAD_WRITE_OF_PRIMITIVE |
179 |
Medium |
| nl.tudelft.simulation.dsol.animation.d2.ImageRenderable.cache is or uses a map or set of URLs, which can be a performance hog |
PERFORMANCE |
DMI_COLLECTION_OF_URLS |
Not available |
High |
| nl.tudelft.simulation.dsol.animation.d2.ImageRenderable.readImages(URL[]) is or uses a map or set of URLs, which can be a performance hog |
PERFORMANCE |
DMI_COLLECTION_OF_URLS |
105 |
High |
| nl.tudelft.simulation.dsol.animation.d2.ImageRenderable.getImages() may expose internal representation by returning ImageRenderable.imageIcons |
MALICIOUS_CODE |
EI_EXPOSE_REP |
187 |
Medium |
| Static field "cache" is modified by an instance level synchronized method. |
MT_CORRECTNESS |
SSD_DO_NOT_USE_INSTANCE_LOCK_ON_SHARED_STATIC_DATA |
266 |
Medium |
nl.tudelft.simulation.dsol.animation.d2.Renderable2d
nl.tudelft.simulation.dsol.animation.d2.Renderable2dComparator
| Bug |
Category |
Details |
Line |
Priority |
| nl.tudelft.simulation.dsol.animation.d2.Renderable2dComparator.compare(Renderable2dInterface, Renderable2dInterface) incorrectly handles double value |
BAD_PRACTICE |
CO_COMPARETO_INCORRECT_FLOATING |
37 |
Medium |
| nl.tudelft.simulation.dsol.animation.d2.Renderable2dComparator implements Comparator but not Serializable |
BAD_PRACTICE |
SE_COMPARATOR_SHOULD_BE_SERIALIZABLE |
16-47 |
Medium |
nl.tudelft.simulation.dsol.animation.d2.RenderableScale
| Bug |
Category |
Details |
Line |
Priority |
| Exception thrown in class nl.tudelft.simulation.dsol.animation.d2.RenderableScale at new nl.tudelft.simulation.dsol.animation.d2.RenderableScale() will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
69 |
Medium |
| Exception thrown in class nl.tudelft.simulation.dsol.animation.d2.RenderableScale at new nl.tudelft.simulation.dsol.animation.d2.RenderableScale(double) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
60 |
Medium |
| Exception thrown in class nl.tudelft.simulation.dsol.animation.d2.RenderableScale at new nl.tudelft.simulation.dsol.animation.d2.RenderableScale(double, double) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
46 |
Medium |
nl.tudelft.simulation.dsol.animation.graph.DoubleAppendList$DoubleAppendIterator
| Bug |
Category |
Details |
Line |
Priority |
| Should nl.tudelft.simulation.dsol.animation.graph.DoubleAppendList$DoubleAppendIterator be a _static_ inner class? |
PERFORMANCE |
SIC_INNER_SHOULD_BE_STATIC |
103-130 |
Medium |
nl.tudelft.simulation.dsol.animation.graph.FloatAppendList$FloatAppendIterator
| Bug |
Category |
Details |
Line |
Priority |
| Should nl.tudelft.simulation.dsol.animation.graph.FloatAppendList$FloatAppendIterator be a _static_ inner class? |
PERFORMANCE |
SIC_INNER_SHOULD_BE_STATIC |
103-130 |
Medium |
nl.tudelft.simulation.dsol.animation.interpolation.ColorInterpolation
| Bug |
Category |
Details |
Line |
Priority |
| Exception thrown in class nl.tudelft.simulation.dsol.animation.interpolation.ColorInterpolation at new nl.tudelft.simulation.dsol.animation.interpolation.ColorInterpolation(Color, Color, double, double) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
55 |
Medium |
nl.tudelft.simulation.dsol.animation.interpolation.LinearInterpolation
| Bug |
Category |
Details |
Line |
Priority |
| Exception thrown in class nl.tudelft.simulation.dsol.animation.interpolation.LinearInterpolation at new nl.tudelft.simulation.dsol.animation.interpolation.LinearInterpolation(double, double, OrientedPoint3d, OrientedPoint3d) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
46 |
Medium |