FindBugs Bug Detector Report

The following document contains the results of FindBugs Report

FindBugs Version is 1.3.9

Threshold is medium

Effort is min

Summary

ClassesBugsErrorsMissing Classes
604100

org.diyefi.openlogviewer.OpenLogViewer

BugCategoryDetailsLinePriority
Method org.diyefi.openlogviewer.OpenLogViewer.openAppWideProps(Properties) may fail to clean up java.io.InputStreamEXPERIMENTALOBL_UNSATISFIED_OBLIGATION420Medium
Method org.diyefi.openlogviewer.OpenLogViewer.removeApplicationWideProperty(String) may fail to clean up java.io.OutputStreamEXPERIMENTALOBL_UNSATISFIED_OBLIGATION383Medium
Method org.diyefi.openlogviewer.OpenLogViewer.saveApplicationWideProperty(String, String) may fail to clean up java.io.OutputStreamEXPERIMENTALOBL_UNSATISFIED_OBLIGATION367Medium
org.diyefi.openlogviewer.OpenLogViewer.openAppWideProps(Properties) may fail to close streamBAD_PRACTICEOS_OPEN_STREAM408Medium
org.diyefi.openlogviewer.OpenLogViewer.removeApplicationWideProperty(String) may fail to close streamBAD_PRACTICEOS_OPEN_STREAM383Medium
org.diyefi.openlogviewer.OpenLogViewer.saveApplicationWideProperty(String, String) may fail to close streamBAD_PRACTICEOS_OPEN_STREAM367Medium
org.diyefi.openlogviewer.decoder.CSVTypeLog stored into non-transient field OpenLogViewer.decoderInUseBAD_PRACTICESE_BAD_FIELD_STORE334Medium
org.diyefi.openlogviewer.decoder.FreeEMSBin stored into non-transient field OpenLogViewer.decoderInUseBAD_PRACTICESE_BAD_FIELD_STORE332Medium

org.diyefi.openlogviewer.coloring.InitialLineColoring

BugCategoryDetailsLinePriority
java.awt.Color is incompatible with expected argument type MarkedColor in org.diyefi.openlogviewer.coloring.InitialLineColoring.giveBackColor(Color)CORRECTNESSGC_UNRELATED_TYPES89High
java.awt.Color is incompatible with expected argument type MarkedColor in org.diyefi.openlogviewer.coloring.InitialLineColoring.giveBackColor(Color)CORRECTNESSGC_UNRELATED_TYPES90High

org.diyefi.openlogviewer.coloring.MarkedColor

BugCategoryDetailsLinePriority
org.diyefi.openlogviewer.coloring.MarkedColor defines equals(MarkedColor) method and uses Object.equals(Object)CORRECTNESSEQ_SELF_USE_OBJECT91Medium
org.diyefi.openlogviewer.coloring.MarkedColor defines equals and uses Object.hashCode()BAD_PRACTICEHE_EQUALS_USE_HASHCODE91Medium

org.diyefi.openlogviewer.decoder.CSVTypeLog

BugCategoryDetailsLinePriority
Dead store to splitLine in org.diyefi.openlogviewer.decoder.CSVTypeLog.decodeLog()STYLEDLS_DEAD_LOCAL_STORE81Medium
Dead store to split in org.diyefi.openlogviewer.decoder.CSVTypeLog.scanForDelimiter()STYLEDLS_DEAD_LOCAL_STORE121Medium
new org.diyefi.openlogviewer.decoder.CSVTypeLog(File) invokes Thread.start()MT_CORRECTNESSSC_START_IN_CTOR47Medium

org.diyefi.openlogviewer.decoder.FreeEMSBin

BugCategoryDetailsLinePriority
Exception is caught when Exception is not thrown in org.diyefi.openlogviewer.decoder.FreeEMSBin.run()STYLEREC_CATCH_EXCEPTION312Medium
new org.diyefi.openlogviewer.decoder.FreeEMSBin(File) invokes Thread.start()MT_CORRECTNESSSC_START_IN_CTOR215Medium

org.diyefi.openlogviewer.decoder.FreeEmsPacket

BugCategoryDetailsLinePriority
org.diyefi.openlogviewer.decoder.FreeEmsPacket.getPayload() may expose internal representation by returning FreeEmsPacket.payloadMALICIOUS_CODEEI_EXPOSE_REP97Medium

org.diyefi.openlogviewer.decoder.LogField

BugCategoryDetailsLinePriority
org.diyefi.openlogviewer.decoder.LogField.getBitFieldNames() may expose internal representation by returning LogField.bitFieldNamesMALICIOUS_CODEEI_EXPOSE_REP104Medium
new org.diyefi.openlogviewer.decoder.LogField(String, LogField$types, String[]) may expose internal representation by storing an externally mutable object into LogField.bitFieldNamesMALICIOUS_CODEEI_EXPOSE_REP278Medium
org.diyefi.openlogviewer.decoder.LogField.setBitFieldNames(String[]) may expose internal representation by storing an externally mutable object into LogField.bitFieldNamesMALICIOUS_CODEEI_EXPOSE_REP2119Medium

org.diyefi.openlogviewer.decoder.LogField$types

BugCategoryDetailsLinePriority
The class name org.diyefi.openlogviewer.decoder.LogField$types doesn't start with an upper case letterBAD_PRACTICENM_CLASS_NAMING_CONVENTION4-22Medium

org.diyefi.openlogviewer.genericlog.GenericDataElement

BugCategoryDetailsLinePriority
org.diyefi.openlogviewer.genericlog.GenericDataElement.getTransferDataFlavors() may expose internal representation by returning GenericDataElement.dataFlavorMALICIOUS_CODEEI_EXPOSE_REP193Medium
org.diyefi.openlogviewer.genericlog.GenericDataElement defines compareTo(GenericDataElement) and uses Object.equals()BAD_PRACTICEEQ_COMPARETO_USE_OBJECT_EQUALS175Medium

org.diyefi.openlogviewer.genericlog.GenericLog

BugCategoryDetailsLinePriority
org.diyefi.openlogviewer.genericlog.GenericLog$1 stored into non-transient field GenericLog.autoLoadBAD_PRACTICESE_BAD_FIELD_STORE66Medium

org.diyefi.openlogviewer.graphing.EntireGraphingPanel

BugCategoryDetailsLinePriority
integral division result cast to double or float in org.diyefi.openlogviewer.graphing.EntireGraphingPanel.centerGraphPosition(int, int)STYLEICAST_IDIV_CAST_TO_DOUBLE378Medium

org.diyefi.openlogviewer.optionpanel.OptionFrameV2

BugCategoryDetailsLinePriority
org.diyefi.openlogviewer.optionpanel.OptionFrameV2$1 stored into non-transient field OptionFrameV2.addDivisionListenerBAD_PRACTICESE_BAD_FIELD_STORE123Medium
org.diyefi.openlogviewer.optionpanel.OptionFrameV2$3 stored into non-transient field OptionFrameV2.addRemoveListenerBAD_PRACTICESE_BAD_FIELD_STORE137Medium
org.diyefi.openlogviewer.optionpanel.OptionFrameV2$4 stored into non-transient field OptionFrameV2.labelAdapterBAD_PRACTICESE_BAD_FIELD_STORE244Medium
org.diyefi.openlogviewer.optionpanel.OptionFrameV2$2 stored into non-transient field OptionFrameV2.remDivisionListenerBAD_PRACTICESE_BAD_FIELD_STORE130Medium
Method org.diyefi.openlogviewer.optionpanel.OptionFrameV2.updateFromLog(GenericLog) makes inefficient use of keySet iterator instead of entrySet iteratorPERFORMANCEWMI_WRONG_MAP_ITERATOR312Medium

org.diyefi.openlogviewer.optionpanel.OptionFrameV2$ActiveHeaderLabel

BugCategoryDetailsLinePriority
org.diyefi.openlogviewer.optionpanel.OptionFrameV2$ActiveHeaderLabel defines compareTo(Object) and uses Object.equals()BAD_PRACTICEEQ_COMPARETO_USE_OBJECT_EQUALS659-663Medium
org.diyefi.openlogviewer.optionpanel.OptionFrameV2$ActiveHeaderLabel$1 stored into non-transient field OptionFrameV2$ActiveHeaderLabel.selectedListenerBAD_PRACTICESE_BAD_FIELD_STORE500Medium

org.diyefi.openlogviewer.optionpanel.OptionFrameV2$ModifyGraphPane

BugCategoryDetailsLinePriority
org.diyefi.openlogviewer.optionpanel.OptionFrameV2$ModifyGraphPane$2 stored into non-transient field OptionFrameV2$ModifyGraphPane.applyButtonListenerBAD_PRACTICESE_BAD_FIELD_STORE385Medium
org.diyefi.openlogviewer.optionpanel.OptionFrameV2$ModifyGraphPane$4 stored into non-transient field OptionFrameV2$ModifyGraphPane.colorButtonListenerBAD_PRACTICESE_BAD_FIELD_STORE405Medium
org.diyefi.openlogviewer.optionpanel.OptionFrameV2$ModifyGraphPane$1 stored into non-transient field OptionFrameV2$ModifyGraphPane.resetButtonListenerBAD_PRACTICESE_BAD_FIELD_STORE374Medium
org.diyefi.openlogviewer.optionpanel.OptionFrameV2$ModifyGraphPane$3 stored into non-transient field OptionFrameV2$ModifyGraphPane.saveButtonListenerBAD_PRACTICESE_BAD_FIELD_STORE394Medium
Should org.diyefi.openlogviewer.optionpanel.OptionFrameV2$ModifyGraphPane be a _static_ inner class?PERFORMANCESIC_INNER_SHOULD_BE_STATIC360-488Medium

org.diyefi.openlogviewer.propertypanel.PropertiesPane

BugCategoryDetailsLinePriority
Method org.diyefi.openlogviewer.propertypanel.PropertiesPane.loadProperties() may fail to clean up java.io.ReaderEXPERIMENTALOBL_UNSATISFIED_OBLIGATION196Medium

org.diyefi.openlogviewer.propertypanel.PropertiesPane$PropertyPanel

BugCategoryDetailsLinePriority
org.diyefi.openlogviewer.propertypanel.PropertiesPane$PropertyPanel defines compareTo(PropertiesPane$PropertyPanel) and uses Object.equals()BAD_PRACTICEEQ_COMPARETO_USE_OBJECT_EQUALS437Medium

org.diyefi.openlogviewer.propertypanel.SingleProperty

BugCategoryDetailsLinePriority
org.diyefi.openlogviewer.propertypanel.SingleProperty defines compareTo(SingleProperty) and uses Object.equals()BAD_PRACTICEEQ_COMPARETO_USE_OBJECT_EQUALS122Medium