The following document contains the results of SpotBugs
SpotBugs Version is 4.1.3
Threshold is medium
Effort is default
Classes | Bugs | Errors | Missing Classes |
---|---|---|---|
181 | 118 | 0 | 0 |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Usage of GetResource in new org.woehlke.computer.kurzweil.ComputerKurzweilApplication(String[]) may be unsafe if class is extended | BAD_PRACTICE | UI_INHERITANCE_UNSAFE_GETRESOURCE | 48 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.woehlke.computer.kurzweil.application.ComputerKurzweilFrame implements same interface as superclass | STYLE | RI_REDUNDANT_INTERFACES | 25-161 | Low |
Class org.woehlke.computer.kurzweil.application.ComputerKurzweilFrame defines non-transient non-serializable instance field ctx | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.woehlke.computer.kurzweil.application.ComputerKurzweilMenuBar.lambda$new$0(ActionEvent) invokes System.exit(...), which shuts down the entire virtual machine | BAD_PRACTICE | DM_EXIT | 32 | Low |
Class org.woehlke.computer.kurzweil.application.ComputerKurzweilMenuBar defines non-transient non-serializable instance field ctx | BAD_PRACTICE | SE_BAD_FIELD | Not available | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties.propertiesFactory(File) may fail to clean up java.io.InputStream | EXPERIMENTAL | OBL_UNSATISFIED_OBLIGATION | 485 | Medium |
org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties.propertiesFactory(String, String) may fail to close stream | BAD_PRACTICE | OS_OPEN_STREAM | 503 | Medium |
Exception is caught when Exception is not thrown in org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties.propertiesFactory(File) | STYLE | REC_CATCH_EXCEPTION | 488 | Low |
Exception is caught when Exception is not thrown in org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties.propertiesFactory(String, String) | STYLE | REC_CATCH_EXCEPTION | 508 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to $L0 in org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties$1.<static initializer for 1>() | STYLE | DLS_DEAD_LOCAL_STORE | 517 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Confusing to have methods org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties$Allinone$View.getSubtitle() and org.woehlke.computer.kurzweil.commons.widgets.SubTabImpl.getSubTitle() | BAD_PRACTICE | NM_CONFUSING | 60 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.woehlke.computer.kurzweil.commons.model.Bounds is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 10-42 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.woehlke.computer.kurzweil.commons.model.LatticeNeighbourhood.getNeighbourhood() may expose internal representation by returning LatticeNeighbourhood.neighbourhood | MALICIOUS_CODE | EI_EXPOSE_REP | 20 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to $L0 in org.woehlke.computer.kurzweil.commons.model.LatticePointNeighbourhoodPosition$1.<static initializer for 1>() | STYLE | DLS_DEAD_LOCAL_STORE | 30 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.woehlke.computer.kurzweil.commons.model.fractal.GaussianNumberPlane.lattice is a volatile reference to an array; the array elements are non-volatile | MT_CORRECTNESS | VO_VOLATILE_REFERENCE_TO_ARRAY | Not available | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.woehlke.computer.kurzweil.tabs.ComputerKurzweilTabbedPane defines non-transient non-serializable instance field ctx | BAD_PRACTICE | SE_BAD_FIELD | Not available | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.woehlke.computer.kurzweil.tabs.cca.CyclicCellularAutomatonCanvas defines non-transient non-serializable instance field colorScheme | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.woehlke.computer.kurzweil.tabs.cca.CyclicCellularAutomatonContext defines non-transient non-serializable instance field controller | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
Class org.woehlke.computer.kurzweil.tabs.cca.CyclicCellularAutomatonContext defines non-transient non-serializable instance field ctx | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
org.woehlke.computer.kurzweil.tabs.cca.CyclicCellularAutomatonContext is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 14-66 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.cca.CyclicCellularAutomatonController.exit() | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_BOOLEAN | 69 | High |
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.cca.CyclicCellularAutomatonController.run() | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_BOOLEAN | 51 | High |
Synchronization on CyclicCellularAutomatonController.goOn in futile attempt to guard it | MT_CORRECTNESS | ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD | 70 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.cca.CyclicCellularAutomatonModel.exec() | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_BOOLEAN | 48 | High |
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.cca.CyclicCellularAutomatonModel.start() | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_BOOLEAN | 147 | High |
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.cca.CyclicCellularAutomatonModel.stop() | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_BOOLEAN | 155 | High |
org.woehlke.computer.kurzweil.tabs.cca.CyclicCellularAutomatonModel.getLattice() may expose internal representation by returning CyclicCellularAutomatonModel.lattice | MALICIOUS_CODE | EI_EXPOSE_REP | 21 | Medium |
Synchronization on CyclicCellularAutomatonModel.running in futile attempt to guard it | MT_CORRECTNESS | ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD | 148 | Medium |
Synchronization on CyclicCellularAutomatonModel.running in futile attempt to guard it | MT_CORRECTNESS | ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD | 156 | Medium |
Class org.woehlke.computer.kurzweil.tabs.cca.CyclicCellularAutomatonModel defines non-transient non-serializable instance field colorScheme | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
org.woehlke.computer.kurzweil.tabs.cca.CyclicCellularAutomatonModel is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 15-162 | Low |
org.woehlke.computer.kurzweil.tabs.cca.CyclicCellularAutomatonModel.lattice is a volatile reference to an array; the array elements are non-volatile | MT_CORRECTNESS | VO_VOLATILE_REFERENCE_TO_ARRAY | Not available | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.woehlke.computer.kurzweil.tabs.cca.CyclicCellularAutomatonTab implements same interface as superclass | STYLE | RI_REDUNDANT_INTERFACES | 15-84 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.woehlke.computer.kurzweil.tabs.dla.DiffusionLimitedAggregationContext defines non-transient non-serializable instance field controller | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
Class org.woehlke.computer.kurzweil.tabs.dla.DiffusionLimitedAggregationContext defines non-transient non-serializable instance field ctx | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
org.woehlke.computer.kurzweil.tabs.dla.DiffusionLimitedAggregationContext is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 15-68 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.dla.DiffusionLimitedAggregationController.exit() | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_BOOLEAN | 68 | High |
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.dla.DiffusionLimitedAggregationController.run() | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_BOOLEAN | 50 | High |
Synchronization on DiffusionLimitedAggregationController.goOn in futile attempt to guard it | MT_CORRECTNESS | ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD | 69 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.dla.DiffusionLimitedAggregationModel.exec() | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_BOOLEAN | 84 | High |
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.dla.DiffusionLimitedAggregationModel.start() | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_BOOLEAN | 61 | High |
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.dla.DiffusionLimitedAggregationModel.stop() | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_BOOLEAN | 69 | High |
org.woehlke.computer.kurzweil.tabs.dla.DiffusionLimitedAggregationModel.getWorldMap() may expose internal representation by returning DiffusionLimitedAggregationModel.worldMap | MALICIOUS_CODE | EI_EXPOSE_REP | 22 | Medium |
Synchronization on DiffusionLimitedAggregationModel.running in futile attempt to guard it | MT_CORRECTNESS | ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD | 62 | Medium |
Synchronization on DiffusionLimitedAggregationModel.running in futile attempt to guard it | MT_CORRECTNESS | ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD | 70 | Medium |
Class org.woehlke.computer.kurzweil.tabs.dla.DiffusionLimitedAggregationModel defines non-transient non-serializable instance field particles | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
org.woehlke.computer.kurzweil.tabs.dla.DiffusionLimitedAggregationModel is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 13-152 | Low |
Switch statement found in org.woehlke.computer.kurzweil.tabs.dla.DiffusionLimitedAggregationModel.exec() where default case is missing | STYLE | SF_SWITCH_NO_DEFAULT | 98-109 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.woehlke.computer.kurzweil.tabs.dla.DiffusionLimitedAggregationTab implements same interface as superclass | STYLE | RI_REDUNDANT_INTERFACES | 13-70 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.MandelbrotContext defines non-transient non-serializable instance field controller | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
Class org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.MandelbrotContext defines non-transient non-serializable instance field ctx | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.MandelbrotContext is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 14-64 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to $L2 in org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.MandelbrotController.run() | STYLE | DLS_DEAD_LOCAL_STORE | 40 | Medium |
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.MandelbrotController.exit() | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_BOOLEAN | 46 | High |
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.MandelbrotController.run() | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_BOOLEAN | 33 | High |
Synchronization on MandelbrotController.goOn in futile attempt to guard it | MT_CORRECTNESS | ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD | 47 | Medium |
Unread field: org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.MandelbrotController.THREAD_SLEEP_TIME; should this field be static? | PERFORMANCE | SS_SHOULD_BE_STATIC | 20 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.MandelbrotModel defines non-transient non-serializable instance field gaussianNumberPlane | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
Class org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.MandelbrotModel defines non-transient non-serializable instance field mandelbrotTabStateMachine | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
Class org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.MandelbrotModel defines non-transient non-serializable instance field mandelbrotTuringMachine | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
Class org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.MandelbrotModel defines non-transient non-serializable instance field properties | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.MandelbrotModel is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 23-143 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to $L0 in org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.MandelbrotModel$1.<static initializer for 1>() | STYLE | DLS_DEAD_LOCAL_STORE | 45 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.MandelbrotTab implements same interface as superclass | STYLE | RI_REDUNDANT_INTERFACES | 22-146 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to $L0 in org.woehlke.computer.kurzweil.tabs.mandelbrotzoom.model.state.MandelbrotTabStateMachine$1.<static initializer for 1>() | STYLE | DLS_DEAD_LOCAL_STORE | 24 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to $L0 in org.woehlke.computer.kurzweil.tabs.mandelbrotzoom.model.turing.MandelbrotTuringMachine$1.<static initializer for 1>() | STYLE | DLS_DEAD_LOCAL_STORE | 37 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Increment of volatile field org.woehlke.computer.kurzweil.tabs.mandelbrotzoom.model.turing.Point.y in org.woehlke.computer.kurzweil.tabs.mandelbrotzoom.model.turing.Point.moveDown() | MT_CORRECTNESS | VO_VOLATILE_INCREMENT | 47 | Medium |
Increment of volatile field org.woehlke.computer.kurzweil.tabs.mandelbrotzoom.model.turing.Point.x in org.woehlke.computer.kurzweil.tabs.mandelbrotzoom.model.turing.Point.moveLeft() | MT_CORRECTNESS | VO_VOLATILE_INCREMENT | 51 | Medium |
Increment of volatile field org.woehlke.computer.kurzweil.tabs.mandelbrotzoom.model.turing.Point.x in org.woehlke.computer.kurzweil.tabs.mandelbrotzoom.model.turing.Point.moveRight() | MT_CORRECTNESS | VO_VOLATILE_INCREMENT | 43 | Medium |
Increment of volatile field org.woehlke.computer.kurzweil.tabs.mandelbrotzoom.model.turing.Point.y in org.woehlke.computer.kurzweil.tabs.mandelbrotzoom.model.turing.Point.moveUp() | MT_CORRECTNESS | VO_VOLATILE_INCREMENT | 39 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Increment of volatile field org.woehlke.computer.kurzweil.tabs.mandelbrotzoom.model.turing.TuringPositions.steps in org.woehlke.computer.kurzweil.tabs.mandelbrotzoom.model.turing.TuringPositions.goForward() | MT_CORRECTNESS | VO_VOLATILE_INCREMENT | 43 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to $L0 in org.woehlke.computer.kurzweil.tabs.mandelbrotzoom.model.turing.TuringPositions$1.<static initializer for 1>() | STYLE | DLS_DEAD_LOCAL_STORE | 44 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.woehlke.computer.kurzweil.tabs.randomwalk.RandomWalkCanvas defines non-transient non-serializable instance field colorScheme | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
Class org.woehlke.computer.kurzweil.tabs.randomwalk.RandomWalkCanvas defines non-transient non-serializable instance field particlePosition | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.woehlke.computer.kurzweil.tabs.randomwalk.RandomWalkContext defines non-transient non-serializable instance field controller | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
Class org.woehlke.computer.kurzweil.tabs.randomwalk.RandomWalkContext defines non-transient non-serializable instance field ctx | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
org.woehlke.computer.kurzweil.tabs.randomwalk.RandomWalkContext is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 14-66 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.randomwalk.RandomWalkController.exit() | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_BOOLEAN | 65 | High |
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.randomwalk.RandomWalkController.run() | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_BOOLEAN | 47 | High |
Synchronization on RandomWalkController.goOn in futile attempt to guard it | MT_CORRECTNESS | ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD | 66 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.randomwalk.RandomWalkModel.exec() | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_BOOLEAN | 45 | High |
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.randomwalk.RandomWalkModel.start() | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_BOOLEAN | 77 | High |
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.randomwalk.RandomWalkModel.stop() | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_BOOLEAN | 85 | High |
org.woehlke.computer.kurzweil.tabs.randomwalk.RandomWalkModel.getLattice() may expose internal representation by returning RandomWalkModel.lattice | MALICIOUS_CODE | EI_EXPOSE_REP | 22 | Medium |
Synchronization on RandomWalkModel.running in futile attempt to guard it | MT_CORRECTNESS | ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD | 78 | Medium |
Synchronization on RandomWalkModel.running in futile attempt to guard it | MT_CORRECTNESS | ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD | 86 | Medium |
Class org.woehlke.computer.kurzweil.tabs.randomwalk.RandomWalkModel defines non-transient non-serializable instance field colorScheme | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
Class org.woehlke.computer.kurzweil.tabs.randomwalk.RandomWalkModel defines non-transient non-serializable instance field particlePosition | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
org.woehlke.computer.kurzweil.tabs.randomwalk.RandomWalkModel is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 14-99 | Low |
org.woehlke.computer.kurzweil.tabs.randomwalk.RandomWalkModel.lattice is a volatile reference to an array; the array elements are non-volatile | MT_CORRECTNESS | VO_VOLATILE_REFERENCE_TO_ARRAY | Not available | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.woehlke.computer.kurzweil.tabs.randomwalk.RandomWalkTab implements same interface as superclass | STYLE | RI_REDUNDANT_INTERFACES | 13-73 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionContext defines non-transient non-serializable instance field ctx | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionContext is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 14-70 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionController.exit() | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_BOOLEAN | 97 | High |
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionController.run() | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_BOOLEAN | 67 | High |
Synchronization on SimulatedEvolutionController.goOn in futile attempt to guard it | MT_CORRECTNESS | ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD | 98 | Medium |
org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionController is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 24-104 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionModel.exec() | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_BOOLEAN | 131 | High |
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionModel.start() | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_BOOLEAN | 73 | High |
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionModel.stop() | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_BOOLEAN | 81 | High |
Synchronization on SimulatedEvolutionModel.running in futile attempt to guard it | MT_CORRECTNESS | ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD | 74 | Medium |
Synchronization on SimulatedEvolutionModel.running in futile attempt to guard it | MT_CORRECTNESS | ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD | 82 | Medium |
org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionModel is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 37-162 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionTab implements same interface as superclass | STYLE | RI_REDUNDANT_INTERFACES | 16-101 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.SimulatedEvolutionParameter is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 7-28 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.SimulatedEvolutionWorldLattice.getWorldMapFoodLattice() may expose internal representation by returning SimulatedEvolutionWorldLattice.worldMapFoodLattice | MALICIOUS_CODE | EI_EXPOSE_REP | 37 | Medium |
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.SimulatedEvolutionWorldLattice is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 28-152 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.cell.Cell defines non-transient non-serializable instance field position | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
new org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.cell.CellCore(Integer[], ComputerKurzweilContext) may expose internal representation by storing an externally mutable object into CellCore.dna | MALICIOUS_CODE | EI_EXPOSE_REP2 | 26 | Medium |
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.cell.CellCore defines non-transient non-serializable instance field ctx | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.cell.CellCore is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 23-174 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.cell.CellLifeCycle defines non-transient non-serializable instance field cellConf | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.cell.CellLifeCycle is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 24-131 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.cell.CellOrientation defines non-transient non-serializable instance field move | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.population.SimulatedEvolutionPopulation is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 8-53 | Low |
Switch statement found in org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.population.SimulatedEvolutionPopulation.countStatusOfOneCell(CellLifeCycleStatus) where default case is missing | STYLE | SF_SWITCH_NO_DEFAULT | 33-50 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to $L0 in org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.population.SimulatedEvolutionPopulation$1.<static initializer for 1>() | STYLE | DLS_DEAD_LOCAL_STORE | 33 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.population.SimulatedEvolutionPopulationContainer is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 15-79 | Low |