SpotBugs Bug Detector Report
The following document contains the results of SpotBugs
SpotBugs Version is 4.9.1
Threshold is medium
Effort is default
Summary
| Classes | Bugs | Errors | Missing Classes |
|---|---|---|---|
| 145 | 171 | 0 | 0 |
Files
org.opentrafficsim.editor.ApplicationStore
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Exception thrown in class org.opentrafficsim.editor.ApplicationStore at new org.opentrafficsim.editor.ApplicationStore(String, String) 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 |
| Boxing/unboxing to parse a primitive org.opentrafficsim.editor.ApplicationStore.colorFromString(String) | PERFORMANCE | DM_BOXED_PRIMITIVE_FOR_PARSING | 239 | High |
| Found reliance on default encoding in new org.opentrafficsim.editor.ApplicationStore(String, String): new java.io.FileReader(String) | I18N | DM_DEFAULT_ENCODING | 83 | High |
| Found reliance on default encoding in org.opentrafficsim.editor.ApplicationStore.save(): new java.io.FileWriter(File) | I18N | DM_DEFAULT_ENCODING | 127 | High |
| new org.opentrafficsim.editor.ApplicationStore(String, String) may fail to clean up java.io.Reader | EXPERIMENTAL | OBL_UNSATISFIED_OBLIGATION | 83 | Medium |
| org.opentrafficsim.editor.ApplicationStore.save() may fail to clean up java.io.Writer | EXPERIMENTAL | OBL_UNSATISFIED_OBLIGATION | 127 | Medium |
| new org.opentrafficsim.editor.ApplicationStore(String, String) may fail to close stream | BAD_PRACTICE | OS_OPEN_STREAM | 83 | Medium |
| org.opentrafficsim.editor.ApplicationStore.save() may fail to close stream | BAD_PRACTICE | OS_OPEN_STREAM | 127 | Medium |
| Exceptional return value of java.io.File.mkdirs() ignored in org.opentrafficsim.editor.ApplicationStore.save() | BAD_PRACTICE | RV_RETURN_VALUE_IGNORED_BAD_PRACTICE | 126 | Medium |
org.opentrafficsim.editor.AttributesTableModel
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| org.opentrafficsim.editor.AttributesTableModel.getNode() may expose internal representation by returning AttributesTableModel.node | MALICIOUS_CODE | EI_EXPOSE_REP | 155 | Medium |
| new org.opentrafficsim.editor.AttributesTableModel(XsdTreeNode, JTreeTable) may expose internal representation by storing an externally mutable object into AttributesTableModel.node | MALICIOUS_CODE | EI_EXPOSE_REP2 | 64 | Medium |
| new org.opentrafficsim.editor.AttributesTableModel(XsdTreeNode, JTreeTable) may expose internal representation by storing an externally mutable object into AttributesTableModel.treeTable | MALICIOUS_CODE | EI_EXPOSE_REP2 | 65 | Medium |
org.opentrafficsim.editor.ChildNodeFinder
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| org.opentrafficsim.editor.ChildNodeFinder.get() may expose internal representation by returning ChildNodeFinder.child | MALICIOUS_CODE | EI_EXPOSE_REP | 65 | Medium |
| new org.opentrafficsim.editor.ChildNodeFinder(XsdTreeNode) may expose internal representation by storing an externally mutable object into ChildNodeFinder.parent | MALICIOUS_CODE | EI_EXPOSE_REP2 | 28 | Medium |
org.opentrafficsim.editor.EvalWrapper
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| org.opentrafficsim.editor.EvalWrapper.getEval(ScenarioWrapper) may expose internal representation by returning EvalWrapper.eval | MALICIOUS_CODE | EI_EXPOSE_REP | 114 | Medium |
| org.opentrafficsim.editor.EvalWrapper.getLastValidEval() may expose internal representation by returning EvalWrapper.eval | MALICIOUS_CODE | EI_EXPOSE_REP | 127 | Medium |
| new org.opentrafficsim.editor.EvalWrapper(OtsEditor) may expose internal representation by storing an externally mutable object into EvalWrapper.editor | MALICIOUS_CODE | EI_EXPOSE_REP2 | 71 | Medium |
| Exception is caught when Exception is not thrown in org.opentrafficsim.editor.EvalWrapper.wrap(XsdTreeNode) | STYLE | REC_CATCH_EXCEPTION | 307 | Medium |
org.opentrafficsim.editor.NodeActions
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| new org.opentrafficsim.editor.NodeActions(OtsEditor, JTreeTable) may expose internal representation by storing an externally mutable object into NodeActions.editor | MALICIOUS_CODE | EI_EXPOSE_REP2 | 38 | Medium |
| new org.opentrafficsim.editor.NodeActions(OtsEditor, JTreeTable) may expose internal representation by storing an externally mutable object into NodeActions.treeTable | MALICIOUS_CODE | EI_EXPOSE_REP2 | 39 | Medium |
org.opentrafficsim.editor.OtsEditor
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Exception thrown in class org.opentrafficsim.editor.OtsEditor at new org.opentrafficsim.editor.OtsEditor() will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 336 | Medium |
| org.opentrafficsim.editor.OtsEditor.getChoiceNode() may expose internal representation by returning OtsEditor.choiceNode | MALICIOUS_CODE | EI_EXPOSE_REP | 1105 | Medium |
| org.opentrafficsim.editor.OtsEditor.getClipboard() may expose internal representation by returning OtsEditor.clipboard | MALICIOUS_CODE | EI_EXPOSE_REP | 1678 | Medium |
| org.opentrafficsim.editor.OtsEditor.getEventListenerMap() may expose internal representation by returning OtsEditor.listenerMap | MALICIOUS_CODE | EI_EXPOSE_REP | 1138 | Medium |
| org.opentrafficsim.editor.OtsEditor.getNodeActions() may expose internal representation by returning OtsEditor.nodeActions | MALICIOUS_CODE | EI_EXPOSE_REP | 1702 | Medium |
| org.opentrafficsim.editor.OtsEditor.getUndo() may expose internal representation by returning OtsEditor.undo | MALICIOUS_CODE | EI_EXPOSE_REP | 541 | Medium |
| org.opentrafficsim.editor.OtsEditor.setChoiceNode(XsdTreeNode) may expose internal representation by storing an externally mutable object into OtsEditor.choiceNode | MALICIOUS_CODE | EI_EXPOSE_REP2 | 1114 | Medium |
| org.opentrafficsim.editor.OtsEditor.setClipboard(XsdTreeNode, boolean) may expose internal representation by storing an externally mutable object into OtsEditor.clipboard | MALICIOUS_CODE | EI_EXPOSE_REP2 | 1668 | Medium |
| org.opentrafficsim.editor.OtsEditor.setCoupledNode(XsdTreeNode, XsdTreeNode, String) may expose internal representation by storing an externally mutable object into OtsEditor.candidateBackNode | MALICIOUS_CODE | EI_EXPOSE_REP2 | 795 | Medium |
| org.opentrafficsim.editor.OtsEditor.setCoupledNode(XsdTreeNode, XsdTreeNode, String) may expose internal representation by storing an externally mutable object into OtsEditor.coupledNode | MALICIOUS_CODE | EI_EXPOSE_REP2 | 794 | Medium |
| org.opentrafficsim.editor.OtsEditor.setSchema(Document) may expose internal representation by storing an externally mutable object into OtsEditor.xsdDocument | MALICIOUS_CODE | EI_EXPOSE_REP2 | 826 | Medium |
| org.opentrafficsim.editor.OtsEditor.checkAutosave() may fail to close stream | BAD_PRACTICE | OS_OPEN_STREAM | 852 | Medium |
| Exceptional return value of java.io.File.delete() ignored in org.opentrafficsim.editor.OtsEditor.checkAutosave() | BAD_PRACTICE | RV_RETURN_VALUE_IGNORED_BAD_PRACTICE | 878 | Medium |
| Exceptional return value of java.io.File.mkdir() ignored in org.opentrafficsim.editor.OtsEditor.checkAutosave() | BAD_PRACTICE | RV_RETURN_VALUE_IGNORED_BAD_PRACTICE | 847 | Medium |
| Exceptional return value of java.io.File.delete() ignored in org.opentrafficsim.editor.OtsEditor.runSingle() | BAD_PRACTICE | RV_RETURN_VALUE_IGNORED_BAD_PRACTICE | 502 | Medium |
| org.opentrafficsim.editor.OtsEditor$3 stored into non-transient field OtsEditor.autosave | BAD_PRACTICE | SE_BAD_FIELD_STORE | 967 | Medium |
org.opentrafficsim.editor.ScenarioWrapper
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| org.opentrafficsim.editor.ScenarioWrapper.scenarioNode() may expose internal representation by returning ScenarioWrapper.scenarioNode | MALICIOUS_CODE | EI_EXPOSE_REP | 31 | Medium |
| new org.opentrafficsim.editor.ScenarioWrapper(XsdTreeNode) may expose internal representation by storing an externally mutable object into ScenarioWrapper.scenarioNode | MALICIOUS_CODE | EI_EXPOSE_REP2 | 12 | Medium |
org.opentrafficsim.editor.Schema
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Exception thrown in class org.opentrafficsim.editor.Schema at new org.opentrafficsim.editor.Schema(Document) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 96 | Medium |
| Call to java.util.Optional<org.w3c.dom.Node>.equals(org.w3c.dom.Node) in org.opentrafficsim.editor.Schema.isType(Node, String) | CORRECTNESS | EC_UNRELATED_CLASS_AND_INTERFACE | 972 | High |
| org.opentrafficsim.editor.Schema.getRoot() may expose internal representation by returning Schema.root | MALICIOUS_CODE | EI_EXPOSE_REP | 869 | Medium |
| org.opentrafficsim.editor.Schema.checkKeyOrUniques(String, Map) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 563 | Medium |
| org.opentrafficsim.editor.Schema.checkKeyrefs() makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 633 | Medium |
org.opentrafficsim.editor.Undo
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Shared primitive variable "cursor" in one thread may not yield the value of the most recent write from another thread | MT_CORRECTNESS | AT_STALE_THREAD_WRITE_OF_PRIMITIVE | 142 | Medium |
| Shared primitive variable "cursor" in one thread may not yield the value of the most recent write from another thread | MT_CORRECTNESS | AT_STALE_THREAD_WRITE_OF_PRIMITIVE | 79 | Medium |
| Shared primitive variable "ignoreChanges" in one thread may not yield the value of the most recent write from another thread | MT_CORRECTNESS | AT_STALE_THREAD_WRITE_OF_PRIMITIVE | 77 | Medium |
| Shared primitive variable "ignoreChanges" in one thread may not yield the value of the most recent write from another thread | MT_CORRECTNESS | AT_STALE_THREAD_WRITE_OF_PRIMITIVE | 91 | Medium |
| new org.opentrafficsim.editor.Undo(OtsEditor, AbstractButton, AbstractButton) may expose internal representation by storing an externally mutable object into Undo.editor | MALICIOUS_CODE | EI_EXPOSE_REP2 | 64 | Medium |
| new org.opentrafficsim.editor.Undo(OtsEditor, AbstractButton, AbstractButton) may expose internal representation by storing an externally mutable object into Undo.redoItem | MALICIOUS_CODE | EI_EXPOSE_REP2 | 66 | Medium |
| new org.opentrafficsim.editor.Undo(OtsEditor, AbstractButton, AbstractButton) may expose internal representation by storing an externally mutable object into Undo.undoItem | MALICIOUS_CODE | EI_EXPOSE_REP2 | 65 | Medium |
| Inconsistent synchronization of org.opentrafficsim.editor.Undo.ignoreChanges; locked 54% of time | MT_CORRECTNESS | IS2_INCONSISTENT_SYNC | 77 | Medium |
org.opentrafficsim.editor.Undo$Action
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Should org.opentrafficsim.editor.Undo$Action be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 486-493 | Medium |
org.opentrafficsim.editor.XiIncludeNode
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| org.opentrafficsim.editor.XiIncludeNode.getFirstChild() may expose internal representation by returning XiIncludeNode.FILE_CHILD | MALICIOUS_CODE | EI_EXPOSE_REP | 98 | Medium |
| org.opentrafficsim.editor.XiIncludeNode.getLastChild() may expose internal representation by returning XiIncludeNode.FALLBACK_CHILD | MALICIOUS_CODE | EI_EXPOSE_REP | 104 | Medium |
org.opentrafficsim.editor.XsdOption
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| org.opentrafficsim.editor.XsdOption.choice() may expose internal representation by returning XsdOption.choice | MALICIOUS_CODE | EI_EXPOSE_REP | 14 | Medium |
| org.opentrafficsim.editor.XsdOption.optionNode() may expose internal representation by returning XsdOption.optionNode | MALICIOUS_CODE | EI_EXPOSE_REP | 14 | Medium |
| new org.opentrafficsim.editor.XsdOption(XsdTreeNode, XsdTreeNode, boolean) may expose internal representation by storing an externally mutable object into XsdOption.choice | MALICIOUS_CODE | EI_EXPOSE_REP2 | 14 | Medium |
| new org.opentrafficsim.editor.XsdOption(XsdTreeNode, XsdTreeNode, boolean) may expose internal representation by storing an externally mutable object into XsdOption.optionNode | MALICIOUS_CODE | EI_EXPOSE_REP2 | 14 | Medium |
org.opentrafficsim.editor.XsdTreeNode
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Operation on the "active" shared variable in "XsdTreeNode" class is not atomic | MT_CORRECTNESS | AT_NONATOMIC_OPERATIONS_ON_SHARED_VARIABLE | 1383 | Medium |
| Operation on the "isIncluded" shared variable in "XsdTreeNode" class is not atomic | MT_CORRECTNESS | AT_NONATOMIC_OPERATIONS_ON_SHARED_VARIABLE | 1352 | Medium |
| Operation on the "maxOccurs" shared variable in "XsdTreeNode" class is not atomic | MT_CORRECTNESS | AT_NONATOMIC_OPERATIONS_ON_SHARED_VARIABLE | 1378 | Medium |
| Operation on the "minOccurs" shared variable in "XsdTreeNode" class is not atomic | MT_CORRECTNESS | AT_NONATOMIC_OPERATIONS_ON_SHARED_VARIABLE | 1377 | Medium |
| Operation on the "maxOccurs" shared variable in "XsdTreeNode" class is not atomic | MT_CORRECTNESS | AT_NONATOMIC_OPERATIONS_ON_SHARED_VARIABLE | 527 | Medium |
| Operation on the "minOccurs" shared variable in "XsdTreeNode" class is not atomic | MT_CORRECTNESS | AT_NONATOMIC_OPERATIONS_ON_SHARED_VARIABLE | 526 | Medium |
| Operation on the "active" shared variable in "XsdTreeNode" class is not atomic | MT_CORRECTNESS | AT_NONATOMIC_OPERATIONS_ON_SHARED_VARIABLE | 1287 | Medium |
| Operation on the "maxOccurs" shared variable in "XsdTreeNode" class is not atomic | MT_CORRECTNESS | AT_NONATOMIC_OPERATIONS_ON_SHARED_VARIABLE | 368 | Medium |
| Shared primitive variable "active" in one thread may not yield the value of the most recent write from another thread | MT_CORRECTNESS | AT_STALE_THREAD_WRITE_OF_PRIMITIVE | 1262 | Medium |
| Shared primitive variable "isIncluded" in one thread may not yield the value of the most recent write from another thread | MT_CORRECTNESS | AT_STALE_THREAD_WRITE_OF_PRIMITIVE | 736 | Medium |
| Shared primitive variable "active" in one thread may not yield the value of the most recent write from another thread | MT_CORRECTNESS | AT_STALE_THREAD_WRITE_OF_PRIMITIVE | 530 | Medium |
| Shared primitive variable "active" in one thread may not yield the value of the most recent write from another thread | MT_CORRECTNESS | AT_STALE_THREAD_WRITE_OF_PRIMITIVE | 1785 | Medium |
| Shared primitive variable "idIndex" in one thread may not yield the value of the most recent write from another thread | MT_CORRECTNESS | AT_STALE_THREAD_WRITE_OF_PRIMITIVE | 1141 | Medium |
| Shared primitive variable "active" in one thread may not yield the value of the most recent write from another thread | MT_CORRECTNESS | AT_STALE_THREAD_WRITE_OF_PRIMITIVE | 2709 | Medium |
| Shared primitive variable "active" in one thread may not yield the value of the most recent write from another thread | MT_CORRECTNESS | AT_STALE_THREAD_WRITE_OF_PRIMITIVE | 1062 | Medium |
| Shared primitive variable "active" in one thread may not yield the value of the most recent write from another thread | MT_CORRECTNESS | AT_STALE_THREAD_WRITE_OF_PRIMITIVE | 1108 | Medium |
| Shared primitive variable "deactivated" in one thread may not yield the value of the most recent write from another thread | MT_CORRECTNESS | AT_STALE_THREAD_WRITE_OF_PRIMITIVE | 1107 | Medium |
| Shared primitive variable "maxOccurs" in one thread may not yield the value of the most recent write from another thread | MT_CORRECTNESS | AT_STALE_THREAD_WRITE_OF_PRIMITIVE | 353 | Medium |
| Shared primitive variable "minOccurs" in one thread may not yield the value of the most recent write from another thread | MT_CORRECTNESS | AT_STALE_THREAD_WRITE_OF_PRIMITIVE | 352 | Medium |
| Exception thrown in class org.opentrafficsim.editor.XsdTreeNode at new org.opentrafficsim.editor.XsdTreeNode(Schema) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 257 | Medium |
| Exception thrown in class org.opentrafficsim.editor.XsdTreeNode at new org.opentrafficsim.editor.XsdTreeNode(XsdTreeNode, Node, ImmutableList) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 277 | Medium |
| Exception thrown in class org.opentrafficsim.editor.XsdTreeNode at new org.opentrafficsim.editor.XsdTreeNode(XsdTreeNode, Node, ImmutableList, Node) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 320 | Medium |
| Call to java.util.Optional<java.lang.String>.equals(String) in org.opentrafficsim.editor.XsdTreeNode.setAttributeValue(int, String) | CORRECTNESS | EC_UNRELATED_TYPES | 916 | High |
| org.opentrafficsim.editor.XsdTreeNode.getOption() may expose internal representation by returning XsdTreeNode.selected | MALICIOUS_CODE | EI_EXPOSE_REP | 511 | Medium |
| org.opentrafficsim.editor.XsdTreeNode.getParent() may expose internal representation by returning XsdTreeNode.parent | MALICIOUS_CODE | EI_EXPOSE_REP | 777 | Medium |
| Inconsistent synchronization of org.opentrafficsim.editor.XsdTreeNode.description; locked 42% of time | MT_CORRECTNESS | IS2_INCONSISTENT_SYNC | 1750 | Medium |
| Return value of add() ignored, is this OK in org.opentrafficsim.editor.XsdTreeNode.assureChildren() | STYLE | RV_RETURN_VALUE_IGNORED_INFERRED | 765 | Medium |
| Return value of add() ignored, is this OK in org.opentrafficsim.editor.XsdTreeNode.loadChildren(XsdTreeNodeUtil$LoadingIndices, NodeList, boolean) | STYLE | RV_RETURN_VALUE_IGNORED_INFERRED | 2582 | Medium |
| org.opentrafficsim.editor.XsdTreeNode.loadXmlNodes(Node) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 2434 | Medium |
org.opentrafficsim.editor.XsdTreeNodeRoot
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Exception thrown in class org.opentrafficsim.editor.XsdTreeNodeRoot at new org.opentrafficsim.editor.XsdTreeNodeRoot(Schema) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 70 | Medium |
org.opentrafficsim.editor.XsdTreeNodeUtil$Occurs
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Boxing/unboxing to parse a primitive org.opentrafficsim.editor.XsdTreeNodeUtil$Occurs.get(Node) | PERFORMANCE | DM_BOXED_PRIMITIVE_FOR_PARSING | 500 | High |
org.opentrafficsim.editor.XsdTreeTableModel
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| org.opentrafficsim.editor.XsdTreeTableModel.setTreeTable(JTreeTable) may expose internal representation by storing an externally mutable object into XsdTreeTableModel.treeTable | MALICIOUS_CODE | EI_EXPOSE_REP2 | 66 | Medium |
org.opentrafficsim.editor.decoration.AutomaticLinkId
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| org.opentrafficsim.editor.decoration.AutomaticLinkId.notifyAttributeChanged(XsdTreeNode, String) may expose internal representation by storing an externally mutable object into AutomaticLinkId.lastNode | MALICIOUS_CODE | EI_EXPOSE_REP2 | 66 | Medium |
org.opentrafficsim.editor.decoration.DefaultDecorator
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Useless condition: it's known that bgHeight > 0 at this point | STYLE | UC_USELESS_CONDITION | 213 | High |
| Useless condition: it's known that bgWidth > 0 at this point | STYLE | UC_USELESS_CONDITION | 212 | High |
org.opentrafficsim.editor.decoration.LayoutCustomizer
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| new org.opentrafficsim.editor.decoration.LayoutCustomizer(OtsEditor) may expose internal representation by storing an externally mutable object into LayoutCustomizer.editor | MALICIOUS_CODE | EI_EXPOSE_REP2 | 37 | Medium |
| Possible null pointer dereference of custom in org.opentrafficsim.editor.decoration.LayoutCustomizer.accept(XsdTreeNode) | CORRECTNESS | NP_NULL_ON_SOME_PATH | 75 | Medium |
org.opentrafficsim.editor.decoration.validation.KeyValidator
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Exception thrown in class org.opentrafficsim.editor.decoration.validation.KeyValidator at new org.opentrafficsim.editor.decoration.validation.KeyValidator(Node, String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 57 | Medium |
org.opentrafficsim.editor.decoration.validation.KeyrefValidator
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Exception thrown in class org.opentrafficsim.editor.decoration.validation.KeyrefValidator at new org.opentrafficsim.editor.decoration.validation.KeyrefValidator(Node, String, KeyValidator) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 51 | Medium |
| org.opentrafficsim.editor.decoration.validation.KeyrefValidator.getCouplings() may expose internal representation by returning KeyrefValidator.coupledNodes | MALICIOUS_CODE | EI_EXPOSE_REP | 228 | Medium |
| new org.opentrafficsim.editor.decoration.validation.KeyrefValidator(Node, String, KeyValidator) may expose internal representation by storing an externally mutable object into KeyrefValidator.refer | MALICIOUS_CODE | EI_EXPOSE_REP2 | 58 | Medium |
org.opentrafficsim.editor.decoration.validation.ParentValidator
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Nullcheck of parent at line 164 of value previously dereferenced in org.opentrafficsim.editor.decoration.validation.ParentValidator.getContext(XsdTreeNode) | CORRECTNESS | RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE | 164 | Medium |
org.opentrafficsim.editor.decoration.validation.RoadLayoutElementValidator
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Exception thrown in class org.opentrafficsim.editor.decoration.validation.RoadLayoutElementValidator at new org.opentrafficsim.editor.decoration.validation.RoadLayoutElementValidator(OtsEditor, String, RoadLayoutElementValidator$LayoutCoupling, RoadLayoutElementValidator$RoadLayoutElementAttribute) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 107 | Medium |
| org.opentrafficsim.editor.decoration.validation.RoadLayoutElementValidator.getCouplings() may expose internal representation by returning RoadLayoutElementValidator.coupledNodes | MALICIOUS_CODE | EI_EXPOSE_REP | 494 | Medium |
org.opentrafficsim.editor.decoration.validation.TrafficLightValidator
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| org.opentrafficsim.editor.decoration.validation.TrafficLightValidator.getCouplings() may expose internal representation by returning TrafficLightValidator.coupledNodes | MALICIOUS_CODE | EI_EXPOSE_REP | 179 | Medium |
org.opentrafficsim.editor.decoration.validation.ValueValidator
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Boxing/unboxing to parse a primitive org.opentrafficsim.editor.decoration.validation.ValueValidator.reportNativeTypeNonCompliance(String, String) | PERFORMANCE | DM_BOXED_PRIMITIVE_FOR_PARSING | 359 | High |
| Boxing/unboxing to parse a primitive org.opentrafficsim.editor.decoration.validation.ValueValidator.reportRestrictionNonCompliance(Node, Node, String) | PERFORMANCE | DM_BOXED_PRIMITIVE_FOR_PARSING | 461 | High |
| org.opentrafficsim.editor.decoration.validation.ValueValidator.SUPPRESS_ERRORS should be moved out of an interface and made package protected | MALICIOUS_CODE | MS_OOI_PKGPROTECT | 34 | Medium |
| org.opentrafficsim.editor.decoration.validation.ValueValidator.reportInvalidValue(Node, String, Schema) has Optional return type and returns explicit null | CORRECTNESS | NP_OPTIONAL_RETURN_NULL | 109 | High |
org.opentrafficsim.editor.decoration.validation.XPathValidator
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Exception thrown in class org.opentrafficsim.editor.decoration.validation.XPathValidator at new org.opentrafficsim.editor.decoration.validation.XPathValidator(Node, String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 44 | Medium |
| new org.opentrafficsim.editor.decoration.validation.XPathValidator(Node, String) may expose internal representation by storing an externally mutable object into XPathValidator.keyNode | MALICIOUS_CODE | EI_EXPOSE_REP2 | 46 | Medium |
org.opentrafficsim.editor.extensions.DefinitionsSaver
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| new org.opentrafficsim.editor.extensions.DefinitionsSaver(OtsEditor) may expose internal representation by storing an externally mutable object into DefinitionsSaver.editor | MALICIOUS_CODE | EI_EXPOSE_REP2 | 35 | Medium |
org.opentrafficsim.editor.extensions.OdEditor
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Exception thrown in class org.opentrafficsim.editor.extensions.OdEditor at new org.opentrafficsim.editor.extensions.OdEditor(OtsEditor) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 36 | Medium |
| new org.opentrafficsim.editor.extensions.OdEditor(OtsEditor) may expose internal representation by storing an externally mutable object into OdEditor.editor | MALICIOUS_CODE | EI_EXPOSE_REP2 | 39 | Medium |
org.opentrafficsim.editor.extensions.RoadLayoutEditor
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Exception thrown in class org.opentrafficsim.editor.extensions.RoadLayoutEditor at new org.opentrafficsim.editor.extensions.RoadLayoutEditor(OtsEditor) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 40 | Medium |
| new org.opentrafficsim.editor.extensions.RoadLayoutEditor(OtsEditor) may expose internal representation by storing an externally mutable object into RoadLayoutEditor.editor | MALICIOUS_CODE | EI_EXPOSE_REP2 | 43 | Medium |
org.opentrafficsim.editor.extensions.RouteEditor
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| new org.opentrafficsim.editor.extensions.RouteEditor(OtsEditor) may expose internal representation by storing an externally mutable object into RouteEditor.editor | MALICIOUS_CODE | EI_EXPOSE_REP2 | 38 | Medium |
org.opentrafficsim.editor.extensions.TrafCodEditor
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| new org.opentrafficsim.editor.extensions.TrafCodEditor(OtsEditor) may expose internal representation by storing an externally mutable object into TrafCodEditor.editor | MALICIOUS_CODE | EI_EXPOSE_REP2 | 36 | Medium |
org.opentrafficsim.editor.extensions.map.ChangeListener
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| org.opentrafficsim.editor.extensions.map.ChangeListener.getNode() may expose internal representation by returning ChangeListener.node | MALICIOUS_CODE | EI_EXPOSE_REP | 180 | Medium |
| new org.opentrafficsim.editor.extensions.map.ChangeListener(XsdTreeNode, Supplier) may expose internal representation by storing an externally mutable object into ChangeListener.node | MALICIOUS_CODE | EI_EXPOSE_REP2 | 62 | Medium |
org.opentrafficsim.editor.extensions.map.EditorMap
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| org.opentrafficsim.editor.extensions.map.EditorMap.getSynchronizableStripes() may expose internal representation by returning EditorMap.synStripes | MALICIOUS_CODE | EI_EXPOSE_REP | 1051 | Medium |
| Possible null pointer dereference of EditorMap.networkFlattenerListener in org.opentrafficsim.editor.extensions.map.EditorMap.removeNetworkFlattener() | CORRECTNESS | NP_NULL_ON_SOME_PATH | 987 | Medium |
org.opentrafficsim.editor.extensions.map.FlattenerListener
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Boxing/unboxing to parse a primitive org.opentrafficsim.editor.extensions.map.FlattenerListener.calculateData() | PERFORMANCE | DM_BOXED_PRIMITIVE_FOR_PARSING | 45 | High |
org.opentrafficsim.editor.extensions.map.MapCrossSectionData
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| new org.opentrafficsim.editor.extensions.map.MapCrossSectionData(XsdTreeNode, CrossSectionGeometry) may expose internal representation by storing an externally mutable object into MapCrossSectionData.linkNode | MALICIOUS_CODE | EI_EXPOSE_REP2 | 35 | Medium |
org.opentrafficsim.editor.extensions.map.MapData
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| org.opentrafficsim.editor.extensions.map.MapData.getNode() may expose internal representation by returning MapData.node | MALICIOUS_CODE | EI_EXPOSE_REP | 52 | Medium |
| new org.opentrafficsim.editor.extensions.map.MapData(EditorMap, XsdTreeNode, OtsEditor) may expose internal representation by storing an externally mutable object into MapData.editor | MALICIOUS_CODE | EI_EXPOSE_REP2 | 42 | Medium |
| new org.opentrafficsim.editor.extensions.map.MapData(EditorMap, XsdTreeNode, OtsEditor) may expose internal representation by storing an externally mutable object into MapData.map | MALICIOUS_CODE | EI_EXPOSE_REP2 | 40 | Medium |
| new org.opentrafficsim.editor.extensions.map.MapData(EditorMap, XsdTreeNode, OtsEditor) may expose internal representation by storing an externally mutable object into MapData.node | MALICIOUS_CODE | EI_EXPOSE_REP2 | 41 | Medium |
org.opentrafficsim.editor.extensions.map.MapLaneBasedObjectData
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| org.opentrafficsim.editor.extensions.map.MapLaneBasedObjectData.getLaneWidth() may expose internal representation by returning MapLaneBasedObjectData.laneWidth | MALICIOUS_CODE | EI_EXPOSE_REP | 131 | Medium |
org.opentrafficsim.editor.extensions.map.MapLinkData
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| org.opentrafficsim.editor.extensions.map.MapLinkData.getEventListenerMap() may expose internal representation by returning MapLinkData.eventListenerMap | MALICIOUS_CODE | EI_EXPOSE_REP | 837 | Medium |
| Useless object stored in variable laneOverrides of method org.opentrafficsim.editor.extensions.map.MapLinkData.buildLayout() | STYLE | UC_USELESS_OBJECT | 609 | Medium |
org.opentrafficsim.editor.extensions.map.MapLinkData$MiddleOffset
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| new org.opentrafficsim.editor.extensions.map.MapLinkData$MiddleOffset(MapLinkData) may expose internal representation by storing an externally mutable object into MapLinkData$MiddleOffset.this$0 | MALICIOUS_CODE | EI_EXPOSE_REP2 | 917 | Medium |
| Should org.opentrafficsim.editor.extensions.map.MapLinkData$MiddleOffset be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 902-957 | Medium |
org.opentrafficsim.editor.extensions.map.MapLinkData$ShapeListener
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Exception is caught when Exception is not thrown in org.opentrafficsim.editor.extensions.map.MapLinkData$ShapeListener.notify(Event) | STYLE | REC_CATCH_EXCEPTION | 1095 | Medium |
| Switch statement found in org.opentrafficsim.editor.extensions.map.MapLinkData$ShapeListener.notify(Event) where default case is missing | STYLE | SF_SWITCH_NO_DEFAULT | 1076-1091 | Medium |
org.opentrafficsim.editor.extensions.map.MapPriorityData
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| new org.opentrafficsim.editor.extensions.map.MapPriorityData(MapLinkData) may expose internal representation by storing an externally mutable object into MapPriorityData.linkData | MALICIOUS_CODE | EI_EXPOSE_REP2 | 42 | Medium |
org.opentrafficsim.editor.extensions.map.MapStripeData
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| org.opentrafficsim.editor.extensions.map.MapStripeData.getDashOffset() may expose internal representation by returning MapStripeData.dashOffset | MALICIOUS_CODE | EI_EXPOSE_REP | 145 | Medium |
| org.opentrafficsim.editor.extensions.map.MapStripeData.getElements() may expose internal representation by returning MapStripeData.elements | MALICIOUS_CODE | EI_EXPOSE_REP | 139 | Medium |
| org.opentrafficsim.editor.extensions.map.MapStripeData.getWidth(Length) may expose internal representation by returning MapStripeData.width | MALICIOUS_CODE | EI_EXPOSE_REP | 103 | Medium |
| new org.opentrafficsim.editor.extensions.map.MapStripeData(Length, XsdTreeNode, CrossSectionGeometry, List, StripeElement$StripeLateralSync, PolyLine2d, MapLinkData$MiddleOffset, Direction, Direction) may expose internal representation by storing an externally mutable object into MapStripeData.dashOffset | MALICIOUS_CODE | EI_EXPOSE_REP2 | 84 | Medium |
| new org.opentrafficsim.editor.extensions.map.MapStripeData(Length, XsdTreeNode, CrossSectionGeometry, List, StripeElement$StripeLateralSync, PolyLine2d, MapLinkData$MiddleOffset, Direction, Direction) may expose internal representation by storing an externally mutable object into MapStripeData.elements | MALICIOUS_CODE | EI_EXPOSE_REP2 | 86 | Medium |
| new org.opentrafficsim.editor.extensions.map.MapStripeData(Length, XsdTreeNode, CrossSectionGeometry, List, StripeElement$StripeLateralSync, PolyLine2d, MapLinkData$MiddleOffset, Direction, Direction) may expose internal representation by storing an externally mutable object into MapStripeData.endDirection | MALICIOUS_CODE | EI_EXPOSE_REP2 | 91 | Medium |
| new org.opentrafficsim.editor.extensions.map.MapStripeData(Length, XsdTreeNode, CrossSectionGeometry, List, StripeElement$StripeLateralSync, PolyLine2d, MapLinkData$MiddleOffset, Direction, Direction) may expose internal representation by storing an externally mutable object into MapStripeData.middleOffset | MALICIOUS_CODE | EI_EXPOSE_REP2 | 89 | Medium |
| new org.opentrafficsim.editor.extensions.map.MapStripeData(Length, XsdTreeNode, CrossSectionGeometry, List, StripeElement$StripeLateralSync, PolyLine2d, MapLinkData$MiddleOffset, Direction, Direction) may expose internal representation by storing an externally mutable object into MapStripeData.startDirection | MALICIOUS_CODE | EI_EXPOSE_REP2 | 90 | Medium |
| org.opentrafficsim.editor.extensions.map.MapStripeData.setDashOffset(Length) may expose internal representation by storing an externally mutable object into MapStripeData.dashOffset | MALICIOUS_CODE | EI_EXPOSE_REP2 | 163 | Medium |
org.opentrafficsim.editor.extensions.map.RoadLayoutListener$1
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Exception is caught when Exception is not thrown in org.opentrafficsim.editor.extensions.map.RoadLayoutListener$1.hasNext() | STYLE | REC_CATCH_EXCEPTION | 214 | Medium |
org.opentrafficsim.editor.extensions.map.SynchronizableMapStripe
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| org.opentrafficsim.editor.extensions.map.SynchronizableMapStripe.getObject() may expose internal representation by returning SynchronizableMapStripe.data | MALICIOUS_CODE | EI_EXPOSE_REP | 82 | Medium |
| new org.opentrafficsim.editor.extensions.map.SynchronizableMapStripe(MapLinkData, MapStripeData, StripeData$StripePhaseSync) may expose internal representation by storing an externally mutable object into SynchronizableMapStripe.data | MALICIOUS_CODE | EI_EXPOSE_REP2 | 45 | Medium |
| new org.opentrafficsim.editor.extensions.map.SynchronizableMapStripe(MapLinkData, MapStripeData, StripeData$StripePhaseSync) may expose internal representation by storing an externally mutable object into SynchronizableMapStripe.linkData | MALICIOUS_CODE | EI_EXPOSE_REP2 | 44 | Medium |
org.opentrafficsim.editor.listeners.AttributesListSelectionListener
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| new org.opentrafficsim.editor.listeners.AttributesListSelectionListener(OtsEditor, JTable) may expose internal representation by storing an externally mutable object into AttributesListSelectionListener.attributesTable | MALICIOUS_CODE | EI_EXPOSE_REP2 | 48 | Medium |
| new org.opentrafficsim.editor.listeners.AttributesListSelectionListener(OtsEditor, JTable) may expose internal representation by storing an externally mutable object into AttributesListSelectionListener.editor | MALICIOUS_CODE | EI_EXPOSE_REP2 | 47 | Medium |
org.opentrafficsim.editor.listeners.AttributesMouseListener
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| new org.opentrafficsim.editor.listeners.AttributesMouseListener(OtsEditor, JTable) may expose internal representation by storing an externally mutable object into AttributesMouseListener.attributesTable | MALICIOUS_CODE | EI_EXPOSE_REP2 | 47 | Medium |
| new org.opentrafficsim.editor.listeners.AttributesMouseListener(OtsEditor, JTable) may expose internal representation by storing an externally mutable object into AttributesMouseListener.editor | MALICIOUS_CODE | EI_EXPOSE_REP2 | 46 | Medium |
org.opentrafficsim.editor.listeners.ChangesListener
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| new org.opentrafficsim.editor.listeners.ChangesListener(OtsEditor, JComboBox) may expose internal representation by storing an externally mutable object into ChangesListener.editor | MALICIOUS_CODE | EI_EXPOSE_REP2 | 44 | Medium |
| new org.opentrafficsim.editor.listeners.ChangesListener(OtsEditor, JComboBox) may expose internal representation by storing an externally mutable object into ChangesListener.scenario | MALICIOUS_CODE | EI_EXPOSE_REP2 | 45 | Medium |
org.opentrafficsim.editor.listeners.PopupValueSelectedListener
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| new org.opentrafficsim.editor.listeners.PopupValueSelectedListener(String, JTable, Consumer, JTreeTable) may expose internal representation by storing an externally mutable object into PopupValueSelectedListener.table | MALICIOUS_CODE | EI_EXPOSE_REP2 | 49 | Medium |
| new org.opentrafficsim.editor.listeners.PopupValueSelectedListener(String, JTable, Consumer, JTreeTable) may expose internal representation by storing an externally mutable object into PopupValueSelectedListener.treeTable | MALICIOUS_CODE | EI_EXPOSE_REP2 | 51 | Medium |
org.opentrafficsim.editor.listeners.XsdTreeEditorListener
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| new org.opentrafficsim.editor.listeners.XsdTreeEditorListener(OtsEditor, JTreeTable) may expose internal representation by storing an externally mutable object into XsdTreeEditorListener.editor | MALICIOUS_CODE | EI_EXPOSE_REP2 | 48 | Medium |
| new org.opentrafficsim.editor.listeners.XsdTreeEditorListener(OtsEditor, JTreeTable) may expose internal representation by storing an externally mutable object into XsdTreeEditorListener.treeTable | MALICIOUS_CODE | EI_EXPOSE_REP2 | 49 | Medium |
org.opentrafficsim.editor.listeners.XsdTreeKeyListener
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| new org.opentrafficsim.editor.listeners.XsdTreeKeyListener(OtsEditor, JTreeTable) may expose internal representation by storing an externally mutable object into XsdTreeKeyListener.editor | MALICIOUS_CODE | EI_EXPOSE_REP2 | 45 | Medium |
| new org.opentrafficsim.editor.listeners.XsdTreeKeyListener(OtsEditor, JTreeTable) may expose internal representation by storing an externally mutable object into XsdTreeKeyListener.treeTable | MALICIOUS_CODE | EI_EXPOSE_REP2 | 46 | Medium |
org.opentrafficsim.editor.listeners.XsdTreeListener
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Dead store to sepNeeded in org.opentrafficsim.editor.listeners.XsdTreeListener.addMoveNodeGroup(XsdTreeNode, JPopupMenu, boolean) | STYLE | DLS_DEAD_LOCAL_STORE | 628 | Medium |
| new org.opentrafficsim.editor.listeners.XsdTreeListener(OtsEditor, JTreeTable, JTable) may expose internal representation by storing an externally mutable object into XsdTreeListener.attributesTable | MALICIOUS_CODE | EI_EXPOSE_REP2 | 85 | Medium |
| new org.opentrafficsim.editor.listeners.XsdTreeListener(OtsEditor, JTreeTable, JTable) may expose internal representation by storing an externally mutable object into XsdTreeListener.editor | MALICIOUS_CODE | EI_EXPOSE_REP2 | 83 | Medium |
| new org.opentrafficsim.editor.listeners.XsdTreeListener(OtsEditor, JTreeTable, JTable) may expose internal representation by storing an externally mutable object into XsdTreeListener.treeTable | MALICIOUS_CODE | EI_EXPOSE_REP2 | 84 | Medium |
org.opentrafficsim.editor.render.AttributeCellRenderer
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| org.opentrafficsim.editor.render.AttributeCellRenderer.getTableCellRendererComponent(JTable, Object, boolean, boolean, int, int) may expose internal representation by returning AttributeCellRenderer.checkBox | MALICIOUS_CODE | EI_EXPOSE_REP | 129 | Medium |
org.opentrafficsim.editor.render.AttributesCellEditor
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| org.opentrafficsim.editor.render.AttributesCellEditor.getTableCellEditorComponent(JTable, Object, boolean, int, int) may expose internal representation by returning AttributesCellEditor.checkBox | MALICIOUS_CODE | EI_EXPOSE_REP | 138 | Medium |
| new org.opentrafficsim.editor.render.AttributesCellEditor(JTable, OtsEditor) may expose internal representation by storing an externally mutable object into AttributesCellEditor.editor | MALICIOUS_CODE | EI_EXPOSE_REP2 | 77 | Medium |
| org.opentrafficsim.editor.render.AttributesCellEditor$2 stored into non-transient field AttributesCellEditor.lastActionListener | BAD_PRACTICE | SE_BAD_FIELD_STORE | 124 | Medium |
org.opentrafficsim.editor.render.StringCellRenderer
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| new org.opentrafficsim.editor.render.StringCellRenderer(JTreeTable) may expose internal representation by storing an externally mutable object into StringCellRenderer.treeTable | MALICIOUS_CODE | EI_EXPOSE_REP2 | 42 | Medium |
org.opentrafficsim.editor.render.XsdTreeCellRenderer
| Bug | Category | Details | Line | Priority |
|---|---|---|---|---|
| Exception thrown in class org.opentrafficsim.editor.render.XsdTreeCellRenderer at new org.opentrafficsim.editor.render.XsdTreeCellRenderer(OtsEditor) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 61 | Medium |
| new org.opentrafficsim.editor.render.XsdTreeCellRenderer(OtsEditor) may expose internal representation by storing an externally mutable object into XsdTreeCellRenderer.editor | MALICIOUS_CODE | EI_EXPOSE_REP2 | 60 | Medium |
| java.awt.image.BufferedImage stored into non-transient field XsdTreeCellRenderer.dropdown | BAD_PRACTICE | SE_BAD_FIELD_STORE | 65 | Medium |
