The following document contains the results of FindBugs Report
FindBugs Version is 2.0.1
Threshold is low
Effort is max
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Write to static field org.diyefi.openlogviewer.FramesPerSecondPanel.currentTime from instance method new org.diyefi.openlogviewer.FramesPerSecondPanel(ResourceBundle) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 83 | Medium |
Write to static field org.diyefi.openlogviewer.FramesPerSecondPanel.thePast from instance method new org.diyefi.openlogviewer.FramesPerSecondPanel(ResourceBundle) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 84 | Medium |
Write to static field org.diyefi.openlogviewer.FramesPerSecondPanel.previousCount from instance method org.diyefi.openlogviewer.FramesPerSecondPanel.actionPerformed(ActionEvent) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 103 | Medium |
Write to static field org.diyefi.openlogviewer.FramesPerSecondPanel.thePast from instance method org.diyefi.openlogviewer.FramesPerSecondPanel.actionPerformed(ActionEvent) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 104 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.diyefi.openlogviewer.OpenLogViewer defines non-transient non-serializable instance field decoderInUse | BAD_PRACTICE | SE_BAD_FIELD | Not available | Low |
Class org.diyefi.openlogviewer.OpenLogViewer defines non-transient non-serializable instance field properties | BAD_PRACTICE | SE_BAD_FIELD | Not available | Low |
org.diyefi.openlogviewer.decoder.CSVTypeLog stored into non-transient field OpenLogViewer.decoderInUse | BAD_PRACTICE | SE_BAD_FIELD_STORE | 413 | Medium |
org.diyefi.openlogviewer.decoder.FreeEMSBin stored into non-transient field OpenLogViewer.decoderInUse | BAD_PRACTICE | SE_BAD_FIELD_STORE | 411 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
The class org.diyefi.openlogviewer.OpenLogViewer$3 could be refactored into a named _static_ inner class | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC_ANON | 195-199 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
The class org.diyefi.openlogviewer.OpenLogViewer$7 could be refactored into a named _static_ inner class | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC_ANON | 231-235 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Found reliance on default encoding in org.diyefi.openlogviewer.decoder.CSVTypeLog.decodeLog(): new java.io.FileReader(File) | I18N | DM_DEFAULT_ENCODING | 84 | High |
Found reliance on default encoding in org.diyefi.openlogviewer.decoder.CSVTypeLog.scanForDelimiter(): new java.io.FileReader(File) | I18N | DM_DEFAULT_ENCODING | 123 | High |
new org.diyefi.openlogviewer.decoder.CSVTypeLog(File, ResourceBundle) invokes Thread.start() | MT_CORRECTNESS | SC_START_IN_CTOR | 51 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Exception is caught when Exception is not thrown in org.diyefi.openlogviewer.decoder.FreeEMSBin.run() | STYLE | REC_CATCH_EXCEPTION | 362 | Medium |
new org.diyefi.openlogviewer.decoder.FreeEMSBin(File, ResourceBundle) invokes Thread.start() | MT_CORRECTNESS | SC_START_IN_CTOR | 260 | Low |
Unread field: org.diyefi.openlogviewer.decoder.FreeEMSBin.labels | PERFORMANCE | URF_UNREAD_FIELD | 225 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.diyefi.openlogviewer.decoder.LogField.getBitFieldNames() may expose internal representation by returning LogField.bitFieldNames | MALICIOUS_CODE | EI_EXPOSE_REP | 104 | Medium |
new org.diyefi.openlogviewer.decoder.LogField(String, LogField$types, String[]) may expose internal representation by storing an externally mutable object into LogField.bitFieldNames | MALICIOUS_CODE | EI_EXPOSE_REP2 | 78 | Medium |
org.diyefi.openlogviewer.decoder.LogField.setBitFieldNames(String[]) may expose internal representation by storing an externally mutable object into LogField.bitFieldNames | MALICIOUS_CODE | EI_EXPOSE_REP2 | 119 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
The class name org.diyefi.openlogviewer.decoder.LogField$types doesn't start with an upper case letter | BAD_PRACTICE | NM_CLASS_NAMING_CONVENTION | 4-22 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.diyefi.openlogviewer.genericlog.GenericDataElement defines compareTo(GenericDataElement) and uses Object.equals() | BAD_PRACTICE | EQ_COMPARETO_USE_OBJECT_EQUALS | 170 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Result of integer multiplication cast to long in org.diyefi.openlogviewer.genericlog.GenericLog.incrementPosition() | STYLE | ICAST_INTEGER_MULTIPLY_CAST_TO_LONG | 150 | Low |
Class org.diyefi.openlogviewer.genericlog.GenericLog defines non-transient non-serializable instance field autoLoad | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
Class org.diyefi.openlogviewer.genericlog.GenericLog defines non-transient non-serializable instance field labels | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
org.diyefi.openlogviewer.genericlog.GenericLog$1 stored into non-transient field GenericLog.autoLoad | BAD_PRACTICE | SE_BAD_FIELD_STORE | 71 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
The class org.diyefi.openlogviewer.genericlog.GenericLog$1 could be refactored into a named _static_ inner class | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC_ANON | 71-84 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to move in org.diyefi.openlogviewer.graphing.EntireGraphingPanel.moveEntireGraphingPanel(double) | STYLE | DLS_DEAD_LOCAL_STORE | 625 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
The class org.diyefi.openlogviewer.graphing.EntireGraphingPanel$2 could be refactored into a named _static_ inner class | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC_ANON | 806-810 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
The class org.diyefi.openlogviewer.graphing.EntireGraphingPanel$3 could be refactored into a named _static_ inner class | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC_ANON | 815-819 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
The class org.diyefi.openlogviewer.graphing.EntireGraphingPanel$4 could be refactored into a named _static_ inner class | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC_ANON | 824-828 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unchecked/unconfirmed cast from java.awt.Graphics to java.awt.Graphics2D in org.diyefi.openlogviewer.graphing.GraphPositionPanel.paintComponent(Graphics) | STYLE | BC_UNCONFIRMED_CAST | 75 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unchecked/unconfirmed cast from java.awt.Graphics to java.awt.Graphics2D in org.diyefi.openlogviewer.graphing.InfoPanel.paintComponent(Graphics) | STYLE | BC_UNCONFIRMED_CAST | 92 | Low |
Class org.diyefi.openlogviewer.graphing.InfoPanel defines non-transient non-serializable instance field labels | BAD_PRACTICE | SE_BAD_FIELD | Not available | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to leftOfTraceData in org.diyefi.openlogviewer.graphing.SingleGraphPanel.paintDataPointsAndTraces(Graphics) | STYLE | DLS_DEAD_LOCAL_STORE | 122 | Low |
Dead store to traceData in org.diyefi.openlogviewer.graphing.SingleGraphPanel.paintDataPointsAndTraces(Graphics) | STYLE | DLS_DEAD_LOCAL_STORE | 123 | Low |
Test for floating point equality in org.diyefi.openlogviewer.graphing.SingleGraphPanel.paintDataPointsAndTraces(Graphics) | STYLE | FE_FLOATING_POINT_EQUALITY | 194 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unchecked/unconfirmed cast from java.awt.Container to javax.swing.JPanel of return value in org.diyefi.openlogviewer.optionpanel.OptionFrameV2.remActiveHeaderPanel(ActionEvent) | STYLE | BC_UNCONFIRMED_CAST_OF_RETURN_VALUE | 209 | Low |
Class org.diyefi.openlogviewer.optionpanel.OptionFrameV2 defines non-transient non-serializable instance field addRemoveListener | BAD_PRACTICE | SE_BAD_FIELD | Not available | Low |
Class org.diyefi.openlogviewer.optionpanel.OptionFrameV2 defines non-transient non-serializable instance field labelAdapter | BAD_PRACTICE | SE_BAD_FIELD | Not available | Low |
Class org.diyefi.openlogviewer.optionpanel.OptionFrameV2 defines non-transient non-serializable instance field labels | BAD_PRACTICE | SE_BAD_FIELD | Not available | Low |
org.diyefi.openlogviewer.optionpanel.OptionFrameV2$1 stored into non-transient field OptionFrameV2.addDivisionListener | BAD_PRACTICE | SE_BAD_FIELD_STORE | 100 | Medium |
org.diyefi.openlogviewer.optionpanel.OptionFrameV2$3 stored into non-transient field OptionFrameV2.addRemoveListener | BAD_PRACTICE | SE_BAD_FIELD_STORE | 114 | Medium |
org.diyefi.openlogviewer.optionpanel.OptionFrameV2$4 stored into non-transient field OptionFrameV2.labelAdapter | BAD_PRACTICE | SE_BAD_FIELD_STORE | 257 | Medium |
org.diyefi.openlogviewer.optionpanel.OptionFrameV2$2 stored into non-transient field OptionFrameV2.remDivisionListener | BAD_PRACTICE | SE_BAD_FIELD_STORE | 107 | Medium |
org.diyefi.openlogviewer.optionpanel.OptionFrameV2.updateFromLog(GenericLog) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 324 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.diyefi.openlogviewer.optionpanel.OptionFrameV2$ActiveHeaderLabel defines compareTo(Object) and uses Object.equals() | BAD_PRACTICE | EQ_COMPARETO_USE_OBJECT_EQUALS | 670-674 | Medium |
org.diyefi.openlogviewer.optionpanel.OptionFrameV2$ActiveHeaderLabel$1 stored into non-transient field OptionFrameV2$ActiveHeaderLabel.selectedListener | BAD_PRACTICE | SE_BAD_FIELD_STORE | 513 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unchecked/unconfirmed cast from java.awt.Container to javax.swing.JPanel of return value in org.diyefi.openlogviewer.optionpanel.OptionFrameV2$ActiveHeaderLabel$1.mousePressed(MouseEvent) | STYLE | BC_UNCONFIRMED_CAST_OF_RETURN_VALUE | 538 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.diyefi.openlogviewer.optionpanel.OptionFrameV2$ModifyGraphPane$2 stored into non-transient field OptionFrameV2$ModifyGraphPane.applyButtonListener | BAD_PRACTICE | SE_BAD_FIELD_STORE | 393 | Medium |
org.diyefi.openlogviewer.optionpanel.OptionFrameV2$ModifyGraphPane$4 stored into non-transient field OptionFrameV2$ModifyGraphPane.colorButtonListener | BAD_PRACTICE | SE_BAD_FIELD_STORE | 413 | Medium |
org.diyefi.openlogviewer.optionpanel.OptionFrameV2$ModifyGraphPane$1 stored into non-transient field OptionFrameV2$ModifyGraphPane.resetButtonListener | BAD_PRACTICE | SE_BAD_FIELD_STORE | 382 | Medium |
org.diyefi.openlogviewer.optionpanel.OptionFrameV2$ModifyGraphPane$3 stored into non-transient field OptionFrameV2$ModifyGraphPane.saveButtonListener | BAD_PRACTICE | SE_BAD_FIELD_STORE | 402 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Found reliance on default encoding in org.diyefi.openlogviewer.propertypanel.PropertiesPane.loadProperties(): new java.io.FileReader(File) | I18N | DM_DEFAULT_ENCODING | 211 | High |
Found reliance on default encoding in org.diyefi.openlogviewer.propertypanel.PropertiesPane.save(): new java.io.FileWriter(File) | I18N | DM_DEFAULT_ENCODING | 240 | High |
org.diyefi.openlogviewer.propertypanel.PropertiesPane.loadProperties() may fail to clean up java.io.Reader | EXPERIMENTAL | OBL_UNSATISFIED_OBLIGATION | 211 | Medium |
org.diyefi.openlogviewer.propertypanel.PropertiesPane.save() may fail to close stream on exception | BAD_PRACTICE | OS_OPEN_STREAM_EXCEPTION_PATH | 241 | Low |
Exception is caught when Exception is not thrown in org.diyefi.openlogviewer.propertypanel.PropertiesPane.setupForLoad() | STYLE | REC_CATCH_EXCEPTION | 137 | Low |
exceptional return value of java.io.File.createNewFile() ignored in org.diyefi.openlogviewer.propertypanel.PropertiesPane.setupForLoad() | BAD_PRACTICE | RV_RETURN_VALUE_IGNORED_BAD_PRACTICE | 134 | Medium |
Class org.diyefi.openlogviewer.propertypanel.PropertiesPane defines non-transient non-serializable instance field labels | BAD_PRACTICE | SE_BAD_FIELD | Not available | Low |
Class org.diyefi.openlogviewer.propertypanel.PropertiesPane defines non-transient non-serializable instance field properties | BAD_PRACTICE | SE_BAD_FIELD | Not available | Low |
Class org.diyefi.openlogviewer.propertypanel.PropertiesPane defines non-transient non-serializable instance field removeProperties | BAD_PRACTICE | SE_BAD_FIELD | Not available | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
The class org.diyefi.openlogviewer.propertypanel.PropertiesPane$3 could be refactored into a named _static_ inner class | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC_ANON | 184-190 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
The class org.diyefi.openlogviewer.propertypanel.PropertiesPane$4 could be refactored into a named _static_ inner class | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC_ANON | 193-200 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.diyefi.openlogviewer.propertypanel.PropertiesPane$PropertyPanel defines compareTo(PropertiesPane$PropertyPanel) and uses Object.equals() | BAD_PRACTICE | EQ_COMPARETO_USE_OBJECT_EQUALS | 451 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.diyefi.openlogviewer.propertypanel.SingleProperty defines compareTo(SingleProperty) and uses Object.equals() | BAD_PRACTICE | EQ_COMPARETO_USE_OBJECT_EQUALS | 127 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Write to static field org.diyefi.openlogviewer.subframes.AboutFrame.aboutFrame from instance method org.diyefi.openlogviewer.subframes.AboutFrame.dispose() | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 254 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Use of non-localized String.toUpperCase() or String.toLowerCase in org.diyefi.openlogviewer.utils.Utilities.getExtension(File) | I18N | DM_CONVERT_CASE | 46 | Low |