FindBugs Bug Detector Report

The following document contains the results of FindBugs Report

FindBugs Version is 1.2.1

Threshold is Low

Effort is Default

Summary

ClassesBugsErrorsMissing Classes
87816100

Files

ClassBugs
org.microemu.app.Headless$11
org.microemu.app.Main41
org.microemu.app.Main$121
org.microemu.app.Main$161
org.microemu.app.Main$53
org.microemu.app.Main$61
org.microemu.app.capture.LZWEncoder1
org.microemu.app.capture.NeuQuant4
org.microemu.app.ui.swing.ExtensionFileFilter2
org.microemu.app.ui.swing.RecordStoreChangePanel1
org.microemu.app.ui.swing.RecordStoreManagerDialog3
org.microemu.app.ui.swing.RecordStoreManagerDialog$21
org.microemu.app.ui.swing.ResizeDeviceDisplayDialog$IntegerField1
org.microemu.app.ui.swing.ResizeDeviceDisplayDialog$IntegerField$IntegerDocument1
org.microemu.app.ui.swing.SwingDeviceComponent9
org.microemu.app.ui.swing.SwingDeviceComponent$MouseRepeatedTimerTask1
org.microemu.app.ui.swing.SwingDisplayComponent10
org.microemu.app.ui.swing.SwingLogConsoleDialog$21
org.microemu.app.ui.swing.SwingLogConsoleDialog$32
org.microemu.app.ui.swing.SwingSelectDevicePanel9
org.microemu.app.ui.swing.SwingSelectDevicePanel$12
org.microemu.app.ui.swing.XYConstraints1
org.microemu.app.util.AppletProducer1
org.microemu.applet.CookieRecordStoreManager3
org.microemu.applet.CookieRecordStoreManager$CookieContent2
org.microemu.applet.Main7
org.microemu.device.j2se.BWImageFilter3
org.microemu.device.j2se.GrayImageFilter6
org.microemu.device.j2se.J2SEButton3
org.microemu.device.j2se.J2SEDevice$11
org.microemu.device.j2se.J2SEDeviceDisplay12
org.microemu.device.j2se.J2SEDisplayGraphics5
org.microemu.device.j2se.J2SEFontManager2
org.microemu.device.j2se.J2SEImmutableImage2
org.microemu.device.j2se.J2SEImmutableImage$11
org.microemu.device.j2se.J2SEImmutableImage$21
org.microemu.device.j2se.J2SEInputMethod1
org.microemu.device.j2se.J2SEMutableImage1
org.microemu.device.j2se.J2SESoftButton4
org.microemu.device.j2se.J2SESystemFont3
org.microemu.device.j2se.J2SETrueTypeFont3
org.microemu.device.j2se.RGBImageFilter3

org.microemu.app.Headless$1

BugCategoryDetailsLine
The class org.microemu.app.Headless$1 could be refactored into a named _static_ inner classPERFORMANCESIC_INNER_SHOULD_BE_STATIC_ANON24-49

org.microemu.app.Main

BugCategoryDetailsLine
Dead store to midletString in org.microemu.app.Main.main(String[])STYLEDLS_DEAD_LOCAL_STORE909
Dead store of null to midletString in org.microemu.app.Main.main(String[])STYLEDLS_DEAD_LOCAL_STORE_OF_NULL911
Class org.microemu.app.Main defines non-transient non-serializable instance field commonBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.Main defines non-transient non-serializable instance field componentListenerBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.Main defines non-transient non-serializable instance field deviceEntryBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.Main defines non-transient non-serializable instance field emulatorContextBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.Main defines non-transient non-serializable instance field encoderBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.Main defines non-transient non-serializable instance field logQueueAppenderBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.Main defines non-transient non-serializable instance field menuAboutListenerBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.Main defines non-transient non-serializable instance field menuCloseMidletListenerBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.Main defines non-transient non-serializable instance field menuExitListenerBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.Main defines non-transient non-serializable instance field menuLogConsoleListenerBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.Main defines non-transient non-serializable instance field menuMIDletNetworkConnectionListenerBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.Main defines non-transient non-serializable instance field menuOpenJADFileListenerBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.Main defines non-transient non-serializable instance field menuOpenJADURLListenerBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.Main defines non-transient non-serializable instance field menuRecordStoreManagerListenerBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.Main defines non-transient non-serializable instance field menuSaveForWebListenerBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.Main defines non-transient non-serializable instance field menuSelectDeviceListenerBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.Main defines non-transient non-serializable instance field menuStartCaptureListenerBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.Main defines non-transient non-serializable instance field menuStopCaptureListenerBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.Main defines non-transient non-serializable instance field responseInterfaceListenerBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.Main defines non-transient non-serializable instance field statusBarListenerBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.Main defines non-transient non-serializable instance field windowListenerBAD_PRACTICESE_BAD_FIELDNot available
org.microemu.app.Main$16 stored into non-transient field Main.componentListenerBAD_PRACTICESE_BAD_FIELD_STORE571
org.microemu.app.Main$1 stored into non-transient field Main.emulatorContextBAD_PRACTICESE_BAD_FIELD_STORE166
org.microemu.app.Main$11 stored into non-transient field Main.menuAboutListenerBAD_PRACTICESE_BAD_FIELD_STORE484
org.microemu.app.Main$4 stored into non-transient field Main.menuCloseMidletListenerBAD_PRACTICESE_BAD_FIELD_STORE234
org.microemu.app.Main$12 stored into non-transient field Main.menuExitListenerBAD_PRACTICESE_BAD_FIELD_STORE490
org.microemu.app.Main$10 stored into non-transient field Main.menuLogConsoleListenerBAD_PRACTICESE_BAD_FIELD_STORE465
org.microemu.app.Main$8 stored into non-transient field Main.menuMIDletNetworkConnectionListenerBAD_PRACTICESE_BAD_FIELD_STORE441
org.microemu.app.Main$2 stored into non-transient field Main.menuOpenJADFileListenerBAD_PRACTICESE_BAD_FIELD_STORE195
org.microemu.app.Main$3 stored into non-transient field Main.menuOpenJADURLListenerBAD_PRACTICESE_BAD_FIELD_STORE220
org.microemu.app.Main$9 stored into non-transient field Main.menuRecordStoreManagerListenerBAD_PRACTICESE_BAD_FIELD_STORE448
org.microemu.app.Main$5 stored into non-transient field Main.menuSaveForWebListenerBAD_PRACTICESE_BAD_FIELD_STORE240
org.microemu.app.Main$13 stored into non-transient field Main.menuSelectDeviceListenerBAD_PRACTICESE_BAD_FIELD_STORE515
org.microemu.app.Main$6 stored into non-transient field Main.menuStartCaptureListenerBAD_PRACTICESE_BAD_FIELD_STORE364
org.microemu.app.Main$7 stored into non-transient field Main.menuStopCaptureListenerBAD_PRACTICESE_BAD_FIELD_STORE428
org.microemu.app.Main$15 stored into non-transient field Main.responseInterfaceListenerBAD_PRACTICESE_BAD_FIELD_STORE557
org.microemu.app.Main$14 stored into non-transient field Main.statusBarListenerBAD_PRACTICESE_BAD_FIELD_STORE549
org.microemu.app.Main$17 stored into non-transient field Main.windowListenerBAD_PRACTICESE_BAD_FIELD_STORE614
Useless control flow in org.microemu.app.Main.setDevice(DeviceEntry)STYLEUCF_USELESS_CONTROL_FLOW807

org.microemu.app.Main$12

BugCategoryDetailsLine
org.microemu.app.Main$12.actionPerformed(ActionEvent) invokes System.exit(...), which shuts down the entire virtual machineBAD_PRACTICEDM_EXIT511

org.microemu.app.Main$16

BugCategoryDetailsLine
Main$16.timer not initialized in constructorSTYLEUWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTORNot available

org.microemu.app.Main$5

BugCategoryDetailsLine
Dead store to deviceDescriptorLocation in org.microemu.app.Main$5.actionPerformed(ActionEvent)STYLEDLS_DEAD_LOCAL_STORE334
Use of non-localized String.toUpperCase() or String.toLowerCaseI18NDM_CONVERT_CASE256
Useless control flow in org.microemu.app.Main$5.actionPerformed(ActionEvent)STYLEUCF_USELESS_CONTROL_FLOW272

org.microemu.app.Main$6

BugCategoryDetailsLine
Use of non-localized String.toUpperCase() or String.toLowerCaseI18NDM_CONVERT_CASE379

org.microemu.app.capture.LZWEncoder

BugCategoryDetailsLine
The field name org.microemu.app.capture.LZWEncoder.ClearCode doesn't start with an lower case letterBAD_PRACTICENM_FIELD_NAMING_CONVENTIONNot available

org.microemu.app.capture.NeuQuant

BugCategoryDetailsLine
org.microemu.app.capture.NeuQuant.alterneigh(int, int, int, int, int) might ignore java.lang.ExceptionBAD_PRACTICEDE_MIGHT_IGNORE385
org.microemu.app.capture.NeuQuant.NeuQuant(byte[], int, int) may expose internal representation by storing an externally mutable object into NeuQuant.thepictureMALICIOUS_CODEEI_EXPOSE_REP2114
Computation of average could overflow in org.microemu.app.capture.NeuQuant.inxbuild()STYLEIM_AVERAGE_COMPUTATION_COULD_OVERFLOW184
Exception is caught when Exception is not thrown in org.microemu.app.capture.NeuQuant.alterneigh(int, int, int, int, int)STYLEREC_CATCH_EXCEPTION385

org.microemu.app.ui.swing.ExtensionFileFilter

BugCategoryDetailsLine
Use of non-localized String.toUpperCase() or String.toLowerCaseI18NDM_CONVERT_CASE65
Use of non-localized String.toUpperCase() or String.toLowerCaseI18NDM_CONVERT_CASE81

org.microemu.app.ui.swing.RecordStoreChangePanel

BugCategoryDetailsLine
Class org.microemu.app.ui.swing.RecordStoreChangePanel defines non-transient non-serializable instance field commonBAD_PRACTICESE_BAD_FIELDNot available

org.microemu.app.ui.swing.RecordStoreManagerDialog

BugCategoryDetailsLine
Class org.microemu.app.ui.swing.RecordStoreManagerDialog defines non-transient non-serializable instance field commonBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.ui.swing.RecordStoreManagerDialog defines non-transient non-serializable instance field recordStoreTypeChangeListenerBAD_PRACTICESE_BAD_FIELDNot available
org.microemu.app.ui.swing.RecordStoreManagerDialog$1 stored into non-transient field RecordStoreManagerDialog.recordStoreTypeChangeListenerBAD_PRACTICESE_BAD_FIELD_STORE81

org.microemu.app.ui.swing.RecordStoreManagerDialog$2

BugCategoryDetailsLine
The class org.microemu.app.ui.swing.RecordStoreManagerDialog$2 could be refactored into a named _static_ inner classPERFORMANCESIC_INNER_SHOULD_BE_STATIC_ANON190-203

org.microemu.app.ui.swing.ResizeDeviceDisplayDialog$IntegerField

BugCategoryDetailsLine
Should org.microemu.app.ui.swing.ResizeDeviceDisplayDialog$IntegerField be a _static_ inner class?PERFORMANCESIC_INNER_SHOULD_BE_STATIC44-60

org.microemu.app.ui.swing.ResizeDeviceDisplayDialog$IntegerField$IntegerDocument

BugCategoryDetailsLine
Potentially dangerous use of non-short-circuit logic in org.microemu.app.ui.swing.ResizeDeviceDisplayDialog$IntegerField$IntegerDocument.insertString(int, String, AttributeSet)CORRECTNESSNS_DANGEROUS_NON_SHORT_CIRCUIT80

org.microemu.app.ui.swing.SwingDeviceComponent

BugCategoryDetailsLine
Class org.microemu.app.ui.swing.SwingDeviceComponent defines non-transient non-serializable instance field mouseListenerBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.ui.swing.SwingDeviceComponent defines non-transient non-serializable instance field mouseMotionListenerBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.ui.swing.SwingDeviceComponent defines non-transient non-serializable instance field offgBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.ui.swing.SwingDeviceComponent defines non-transient non-serializable instance field offiBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.ui.swing.SwingDeviceComponent defines non-transient non-serializable instance field overButtonBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.ui.swing.SwingDeviceComponent defines non-transient non-serializable instance field pressedButtonBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.ui.swing.SwingDeviceComponent defines non-transient non-serializable instance field prevOverButtonBAD_PRACTICESE_BAD_FIELDNot available
org.microemu.app.ui.swing.SwingDeviceComponent$1 stored into non-transient field SwingDeviceComponent.mouseListenerBAD_PRACTICESE_BAD_FIELD_STORE149
org.microemu.app.ui.swing.SwingDeviceComponent$2 stored into non-transient field SwingDeviceComponent.mouseMotionListenerBAD_PRACTICESE_BAD_FIELD_STORE222

org.microemu.app.ui.swing.SwingDeviceComponent$MouseRepeatedTimerTask

BugCategoryDetailsLine
Unread field: org.microemu.app.ui.swing.SwingDeviceComponent$MouseRepeatedTimerTask.sourcePERFORMANCEURF_UNREAD_FIELD115

org.microemu.app.ui.swing.SwingDisplayComponent

BugCategoryDetailsLine
Inconsistent synchronization of org.microemu.app.ui.swing.SwingDisplayComponent.displayImage; locked 62% of timeMT_CORRECTNESSIS2_INCONSISTENT_SYNC320
Class org.microemu.app.ui.swing.SwingDisplayComponent defines non-transient non-serializable instance field displayImageBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.ui.swing.SwingDisplayComponent defines non-transient non-serializable instance field displayRepaintListenerBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.ui.swing.SwingDisplayComponent defines non-transient non-serializable instance field initialPressedSoftButtonBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.ui.swing.SwingDisplayComponent defines non-transient non-serializable instance field mouseListenerBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.ui.swing.SwingDisplayComponent defines non-transient non-serializable instance field mouseMotionListenerBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.ui.swing.SwingDisplayComponent defines non-transient non-serializable instance field mouseWheelListenerBAD_PRACTICESE_BAD_FIELDNot available
org.microemu.app.ui.swing.SwingDisplayComponent$1 stored into non-transient field SwingDisplayComponent.mouseListenerBAD_PRACTICESE_BAD_FIELD_STORE76
org.microemu.app.ui.swing.SwingDisplayComponent$2 stored into non-transient field SwingDisplayComponent.mouseMotionListenerBAD_PRACTICESE_BAD_FIELD_STORE163
org.microemu.app.ui.swing.SwingDisplayComponent$3 stored into non-transient field SwingDisplayComponent.mouseWheelListenerBAD_PRACTICESE_BAD_FIELD_STORE213

org.microemu.app.ui.swing.SwingLogConsoleDialog$2

BugCategoryDetailsLine
The class org.microemu.app.ui.swing.SwingLogConsoleDialog$2 could be refactored into a named _static_ inner classPERFORMANCESIC_INNER_SHOULD_BE_STATIC_ANON112-115

org.microemu.app.ui.swing.SwingLogConsoleDialog$3

BugCategoryDetailsLine
The class org.microemu.app.ui.swing.SwingLogConsoleDialog$3 could be refactored into a named _static_ inner classPERFORMANCESIC_INNER_SHOULD_BE_STATIC_ANON122-124
Write to static field org.microemu.log.StdOutAppender.enabled from instance method org.microemu.app.ui.swing.SwingLogConsoleDialog$3.actionPerformed(ActionEvent)STYLEST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD123

org.microemu.app.ui.swing.SwingSelectDevicePanel

BugCategoryDetailsLine
Class org.microemu.app.ui.swing.SwingSelectDevicePanel defines non-transient non-serializable instance field btAddListenerBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.ui.swing.SwingSelectDevicePanel defines non-transient non-serializable instance field btDefaultListenerBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.ui.swing.SwingSelectDevicePanel defines non-transient non-serializable instance field btRemoveListenerBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.ui.swing.SwingSelectDevicePanel defines non-transient non-serializable instance field emulatorContextBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.app.ui.swing.SwingSelectDevicePanel defines non-transient non-serializable instance field listSelectionListenerBAD_PRACTICESE_BAD_FIELDNot available
org.microemu.app.ui.swing.SwingSelectDevicePanel$1 stored into non-transient field SwingSelectDevicePanel.btAddListenerBAD_PRACTICESE_BAD_FIELD_STORE81
org.microemu.app.ui.swing.SwingSelectDevicePanel$3 stored into non-transient field SwingSelectDevicePanel.btDefaultListenerBAD_PRACTICESE_BAD_FIELD_STORE220
org.microemu.app.ui.swing.SwingSelectDevicePanel$2 stored into non-transient field SwingSelectDevicePanel.btRemoveListenerBAD_PRACTICESE_BAD_FIELD_STORE189
org.microemu.app.ui.swing.SwingSelectDevicePanel$4 stored into non-transient field SwingSelectDevicePanel.listSelectionListenerBAD_PRACTICESE_BAD_FIELD_STORE237

org.microemu.app.ui.swing.SwingSelectDevicePanel$1

BugCategoryDetailsLine
Use of non-localized String.toUpperCase() or String.toLowerCaseI18NDM_CONVERT_CASE109
Method org.microemu.app.ui.swing.SwingSelectDevicePanel$1.actionPerformed(ActionEvent) makes inefficient use of keySet iterator instead of entrySet iteratorPERFORMANCEWMI_WRONG_MAP_ITERATOR171

org.microemu.app.ui.swing.XYConstraints

BugCategoryDetailsLine
org.microemu.app.ui.swing.XYConstraints.clone() does not call super.clone()BAD_PRACTICECN_IDIOM_NO_SUPER_CALL107

org.microemu.app.util.AppletProducer

BugCategoryDetailsLine
Use of non-localized String.toUpperCase() or String.toLowerCaseI18NDM_CONVERT_CASE244

org.microemu.applet.CookieRecordStoreManager

BugCategoryDetailsLine
Impossible cast from java.lang.Object[] to java.lang.String[] in org.microemu.applet.CookieRecordStoreManager.listRecordStores()CORRECTNESSBC_IMPOSSIBLE_CAST151
Dead store to format in org.microemu.applet.CookieRecordStoreManager.CookieRecordStoreManager(Applet)STYLEDLS_DEAD_LOCAL_STORE75
Load of known null value in org.microemu.applet.CookieRecordStoreManager.openRecordStore(String, boolean)STYLENP_LOAD_OF_KNOWN_NULL_VALUE179

org.microemu.applet.CookieRecordStoreManager$CookieContent

BugCategoryDetailsLine
Invocation of toString on an array in org.microemu.applet.CookieRecordStoreManager$CookieContent.getParts()CORRECTNESSDMI_INVOKING_TOSTRING_ON_ARRAY288
Should org.microemu.applet.CookieRecordStoreManager$CookieContent be a _static_ inner class?PERFORMANCESIC_INNER_SHOULD_BE_STATIC254-307

org.microemu.applet.Main

BugCategoryDetailsLine
Class org.microemu.applet.Main defines non-transient non-serializable instance field emulatorContextBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.applet.Main defines non-transient non-serializable instance field midletBAD_PRACTICESE_BAD_FIELDNot available
Class org.microemu.applet.Main defines non-transient non-serializable instance field recordStoreManagerBAD_PRACTICESE_BAD_FIELDNot available
org.microemu.applet.Main$1 stored into non-transient field Main.emulatorContextBAD_PRACTICESE_BAD_FIELD_STORE87
org.microemu.util.MemoryRecordStoreManager stored into non-transient field Main.recordStoreManagerBAD_PRACTICESE_BAD_FIELD_STORE133
Write to static field org.microemu.app.util.MIDletSystemProperties.applyToJavaSystemProperties from instance method org.microemu.applet.Main.init()STYLEST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD125
Write to static field org.microemu.app.util.MIDletResourceLoader.classLoader from instance method org.microemu.applet.Main.init()STYLEST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD216

org.microemu.device.j2se.BWImageFilter

BugCategoryDetailsLine
The field name org.microemu.device.j2se.BWImageFilter.Yb doesn't start with an lower case letterBAD_PRACTICENM_FIELD_NAMING_CONVENTIONNot available
The field name org.microemu.device.j2se.BWImageFilter.Yg doesn't start with an lower case letterBAD_PRACTICENM_FIELD_NAMING_CONVENTIONNot available
The field name org.microemu.device.j2se.BWImageFilter.Yr doesn't start with an lower case letterBAD_PRACTICENM_FIELD_NAMING_CONVENTIONNot available

org.microemu.device.j2se.GrayImageFilter

BugCategoryDetailsLine
The field name org.microemu.device.j2se.GrayImageFilter.Rb doesn't start with an lower case letterBAD_PRACTICENM_FIELD_NAMING_CONVENTIONNot available
The field name org.microemu.device.j2se.GrayImageFilter.Rg doesn't start with an lower case letterBAD_PRACTICENM_FIELD_NAMING_CONVENTIONNot available
The field name org.microemu.device.j2se.GrayImageFilter.Rr doesn't start with an lower case letterBAD_PRACTICENM_FIELD_NAMING_CONVENTIONNot available
The field name org.microemu.device.j2se.GrayImageFilter.Yb doesn't start with an lower case letterBAD_PRACTICENM_FIELD_NAMING_CONVENTIONNot available
The field name org.microemu.device.j2se.GrayImageFilter.Yg doesn't start with an lower case letterBAD_PRACTICENM_FIELD_NAMING_CONVENTIONNot available
The field name org.microemu.device.j2se.GrayImageFilter.Yr doesn't start with an lower case letterBAD_PRACTICENM_FIELD_NAMING_CONVENTIONNot available

org.microemu.device.j2se.J2SEButton

BugCategoryDetailsLine
org.microemu.device.j2se.J2SEButton.getKeyboardKeyCodes() may expose internal representation by returning J2SEButton.keyboardKeysMALICIOUS_CODEEI_EXPOSE_REP148
org.microemu.device.j2se.J2SEButton.J2SEButton(int, String, Shape, int, String, String, Hashtable, boolean) may expose internal representation by storing an externally mutable object into J2SEButton.inputToCharsMALICIOUS_CODEEI_EXPOSE_REP2126
Exception is caught when Exception is not thrown in org.microemu.device.j2se.J2SEButton.parseKeyboardKey(String)STYLEREC_CATCH_EXCEPTION222

org.microemu.device.j2se.J2SEDevice$1

BugCategoryDetailsLine
The class org.microemu.device.j2se.J2SEDevice$1 could be refactored into a named _static_ inner classPERFORMANCESIC_INNER_SHOULD_BE_STATIC_ANON53-78

org.microemu.device.j2se.J2SEDeviceDisplay

BugCategoryDetailsLine
Unchecked/unconfirmed cast from javax.microedition.lcdui.Image to org.microemu.device.j2se.J2SEMutableImage in org.microemu.device.j2se.J2SEDeviceDisplay.createImage(Image)STYLEBC_UNCONFIRMED_CAST266
Unchecked/unconfirmed cast from javax.microedition.lcdui.Image to org.microemu.device.j2se.J2SEMutableImage in org.microemu.device.j2se.J2SEDeviceDisplay.createImage(Image, int, int, int, int, int)STYLEBC_UNCONFIRMED_CAST337
Dead store of null to image in org.microemu.device.j2se.J2SEDeviceDisplay.createImage(Image, int, int, int, int, int)STYLEDLS_DEAD_LOCAL_STORE_OF_NULL415
Dead store of null to rgbData in org.microemu.device.j2se.J2SEDeviceDisplay.createImage(Image, int, int, int, int, int)STYLEDLS_DEAD_LOCAL_STORE_OF_NULL414
Usage of GetResource in org.microemu.device.j2se.J2SEDeviceDisplay.getImage(String) may be unsafe if class is extendedBAD_PRACTICEUI_INHERITANCE_UNSAFE_GETRESOURCE541
J2SEDeviceDisplay.backgroundColor not initialized in constructorSTYLEUWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTORNot available
J2SEDeviceDisplay.displayPaintable not initialized in constructorSTYLEUWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTORNot available
J2SEDeviceDisplay.displayRectangle not initialized in constructorSTYLEUWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTORNot available
J2SEDeviceDisplay.foregroundColor not initialized in constructorSTYLEUWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTORNot available
J2SEDeviceDisplay.mode123Image not initialized in constructorSTYLEUWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTORNot available
J2SEDeviceDisplay.modeAbcLowerImage not initialized in constructorSTYLEUWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTORNot available
J2SEDeviceDisplay.modeAbcUpperImage not initialized in constructorSTYLEUWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTORNot available

org.microemu.device.j2se.J2SEDisplayGraphics

BugCategoryDetailsLine
Unchecked/unconfirmed cast from javax.microedition.lcdui.Image to org.microemu.device.j2se.J2SEImmutableImage in org.microemu.device.j2se.J2SEDisplayGraphics.drawImage(Image, int, int, int)STYLEBC_UNCONFIRMED_CAST189
Unchecked/unconfirmed cast from javax.microedition.lcdui.Image to org.microemu.device.j2se.J2SEMutableImage in org.microemu.device.j2se.J2SEDisplayGraphics.drawImage(Image, int, int, int)STYLEBC_UNCONFIRMED_CAST187
Unchecked/unconfirmed cast from javax.microedition.lcdui.Image to org.microemu.device.j2se.J2SEImmutableImage in org.microemu.device.j2se.J2SEDisplayGraphics.drawRegion(Image, int, int, int, int, int, int, int, int)STYLEBC_UNCONFIRMED_CAST274
Unchecked/unconfirmed cast from javax.microedition.lcdui.Image to org.microemu.device.j2se.J2SEMutableImage in org.microemu.device.j2se.J2SEDisplayGraphics.drawRegion(Image, int, int, int, int, int, int, int, int)STYLEBC_UNCONFIRMED_CAST272
Dead store of null to rgbData in org.microemu.device.j2se.J2SEDisplayGraphics.drawRGB(int[], int, int, int, int, int, int, boolean)STYLEDLS_DEAD_LOCAL_STORE_OF_NULL421

org.microemu.device.j2se.J2SEFontManager

BugCategoryDetailsLine
Check to see if ((...) & 0) == 0 in org.microemu.device.j2se.J2SEFontManager.getFont(Font)CORRECTNESSBIT_AND_ZZ69
Use of non-localized String.toUpperCase() or String.toLowerCaseI18NDM_CONVERT_CASE161

org.microemu.device.j2se.J2SEImmutableImage

BugCategoryDetailsLine
Wait not in loop in org.microemu.device.j2se.J2SEImmutableImage.getHeight()MT_CORRECTNESSWA_NOT_IN_LOOP81
Wait not in loop in org.microemu.device.j2se.J2SEImmutableImage.getWidth()MT_CORRECTNESSWA_NOT_IN_LOOP121

org.microemu.device.j2se.J2SEImmutableImage$1

BugCategoryDetailsLine
Using notify rather than notifyAll in org.microemu.device.j2se.J2SEImmutableImage$1.imageUpdate(Image, int, int, int, int, int)MT_CORRECTNESSNO_NOTIFY_NOT_NOTIFYALL65

org.microemu.device.j2se.J2SEImmutableImage$2

BugCategoryDetailsLine
Using notify rather than notifyAll in org.microemu.device.j2se.J2SEImmutableImage$2.imageUpdate(Image, int, int, int, int, int)MT_CORRECTNESSNO_NOTIFY_NOT_NOTIFYALL105

org.microemu.device.j2se.J2SEInputMethod

BugCategoryDetailsLine
Using notify rather than notifyAll in org.microemu.device.j2se.J2SEInputMethod.fireInputMethodListener(J2SEButton, char)MT_CORRECTNESSNO_NOTIFY_NOT_NOTIFYALL308

org.microemu.device.j2se.J2SEMutableImage

BugCategoryDetailsLine
org.microemu.device.j2se.J2SEMutableImage.getData() may expose internal representation by returning J2SEMutableImage.pixelsMALICIOUS_CODEEI_EXPOSE_REP102

org.microemu.device.j2se.J2SESoftButton

BugCategoryDetailsLine
Inconsistent synchronization of org.microemu.device.j2se.J2SESoftButton.command; locked 80% of timeMT_CORRECTNESSIS2_INCONSISTENT_SYNC144
org.microemu.device.j2se.J2SESoftButton.RIGHT isn't final but should beMALICIOUS_CODEMS_SHOULD_BE_FINAL47
org.microemu.device.j2se.J2SESoftButton.LEFT isn't final but should beMALICIOUS_CODEMS_SHOULD_BE_FINAL45
Exception is caught when Exception is not thrown in org.microemu.device.j2se.J2SESoftButton.J2SESoftButton(int, String, Shape, int, String, Rectangle, String, Vector, Font)STYLEREC_CATCH_EXCEPTION94

org.microemu.device.j2se.J2SESystemFont

BugCategoryDetailsLine
Use of non-localized String.toUpperCase() or String.toLowerCaseI18NDM_CONVERT_CASE52
Inconsistent synchronization of org.microemu.device.j2se.J2SESystemFont.initialized; locked 66% of timeMT_CORRECTNESSIS2_INCONSISTENT_SYNC62
Useless control flow in org.microemu.device.j2se.J2SESystemFont.checkInitialized()STYLEUCF_USELESS_CONTROL_FLOW114

org.microemu.device.j2se.J2SETrueTypeFont

BugCategoryDetailsLine
Use of non-localized String.toUpperCase() or String.toLowerCaseI18NDM_CONVERT_CASE57
Inconsistent synchronization of org.microemu.device.j2se.J2SETrueTypeFont.initialized; locked 66% of timeMT_CORRECTNESSIS2_INCONSISTENT_SYNC67
Useless control flow in org.microemu.device.j2se.J2SETrueTypeFont.checkInitialized()STYLEUCF_USELESS_CONTROL_FLOW119

org.microemu.device.j2se.RGBImageFilter

BugCategoryDetailsLine
The field name org.microemu.device.j2se.RGBImageFilter.Rb doesn't start with an lower case letterBAD_PRACTICENM_FIELD_NAMING_CONVENTIONNot available
The field name org.microemu.device.j2se.RGBImageFilter.Rg doesn't start with an lower case letterBAD_PRACTICENM_FIELD_NAMING_CONVENTIONNot available
The field name org.microemu.device.j2se.RGBImageFilter.Rr doesn't start with an lower case letterBAD_PRACTICENM_FIELD_NAMING_CONVENTIONNot available