The following document contains the results of FindBugs Report
FindBugs Version is 1.2.0
Threshold is Low
Effort is Default
| Classes | Bugs | Errors | Missing Classes |
|---|---|---|---|
| 2701 | 624 | 0 | 0 |
| Bug | Category | Details | Line |
|---|---|---|---|
| fabdouglas.Starter.init(String, String[]) invokes System.exit(...), which shuts down the entire virtual machine | BAD_PRACTICE | DM_EXIT | 62 |
| fabdouglas.Starter.boot(List, String, String[]) creates a java.net.URLClassLoader classloader, which should be performed within a doPrivileged block | BAD_PRACTICE | DP_CREATE_CLASSLOADER_INSIDE_DO_PRIVILEGED | 103 |
| Bug | Category | Details | Line |
|---|---|---|---|
| The class fabdouglas.Starter$1 could be refactored into a named _static_ inner class | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC_ANON | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| Class net.sf.firemox.DeckBuilder is final but declares protected field net.sf.firemox.DeckBuilder.allListModel | STYLE | CI_CONFUSED_INHERITANCE | Not available |
| Class net.sf.firemox.DeckBuilder is final but declares protected field net.sf.firemox.DeckBuilder.cardLoader | STYLE | CI_CONFUSED_INHERITANCE | Not available |
| Class net.sf.firemox.DeckBuilder is final but declares protected field net.sf.firemox.DeckBuilder.leftList | STYLE | CI_CONFUSED_INHERITANCE | Not available |
| Class net.sf.firemox.DeckBuilder is final but declares protected field net.sf.firemox.DeckBuilder.rightListModel | STYLE | CI_CONFUSED_INHERITANCE | Not available |
| Class net.sf.firemox.DeckBuilder is final but declares protected field net.sf.firemox.DeckBuilder.timer | STYLE | CI_CONFUSED_INHERITANCE | Not available |
| net.sf.firemox.DeckBuilder.DeckBuilder() might ignore java.lang.Exception | BAD_PRACTICE | DE_MIGHT_IGNORE | 175 |
| net.sf.firemox.DeckBuilder.actionPerformed(ActionEvent) might ignore java.lang.Exception | BAD_PRACTICE | DE_MIGHT_IGNORE | 875 |
| net.sf.firemox.DeckBuilder.form isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| net.sf.firemox.DeckBuilder.consoleMode should be package protected | MALICIOUS_CODE | MS_PKGPROTECT | 1221 |
| Class net.sf.firemox.DeckBuilder defines non-transient non-serializable instance field cardLoader | BAD_PRACTICE | SE_BAD_FIELD | Not available |
| Class net.sf.firemox.DeckBuilder defines non-transient non-serializable instance field datasets | BAD_PRACTICE | SE_BAD_FIELD | Not available |
| Write to static field net.sf.firemox.DeckBuilder.modifiedSinceSave from instance method net.sf.firemox.DeckBuilder.actionPerformed(ActionEvent) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 859 |
| Write to static field net.sf.firemox.DeckBuilder.modifiedSinceSave from instance method net.sf.firemox.DeckBuilder.refreshAddComponent(boolean) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 699 |
| Write to static field net.sf.firemox.DeckBuilder.modifiedSinceSave from instance method net.sf.firemox.DeckBuilder.setAsSaved() | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 1034 |
| Write to static field net.sf.firemox.DeckBuilder.form from instance method net.sf.firemox.DeckBuilder.DeckBuilder() | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 168 |
| Write to static field net.sf.firemox.DeckBuilder.modifiedSinceSave from instance method net.sf.firemox.DeckBuilder.removeCardFromDeck() | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 731 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Use of non-localized String.toUpperCase() or String.toLowerCase | I18N | DM_CONVERT_CASE | 311 |
| net.sf.firemox.Magic.batchMode should be package protected | MALICIOUS_CODE | MS_PKGPROTECT | 359 |
| Exception is caught when Exception is not thrown in net.sf.firemox.Magic.Magic() | STYLE | REC_CATCH_EXCEPTION | 175 |
| Write to static field net.sf.firemox.token.MCommonVars.autoMana from instance method net.sf.firemox.Magic.actionPerformed(ActionEvent) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 612 |
| Write to static field net.sf.firemox.token.MCommonVars.autoStack from instance method net.sf.firemox.Magic.actionPerformed(ActionEvent) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 618 |
| Write to static field net.sf.firemox.action.PayMana.thresholdColored from instance method net.sf.firemox.Magic.Magic() | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 231 |
| Write to static field net.sf.firemox.network.ConnectionManager.client from instance method net.sf.firemox.Magic.Magic() | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 253 |
| Write to static field net.sf.firemox.network.ConnectionManager.server from instance method net.sf.firemox.Magic.Magic() | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 249 |
| Write to static field net.sf.firemox.token.MCommonVars.autoMana from instance method net.sf.firemox.Magic.Magic() | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 219 |
| Write to static field net.sf.firemox.token.MCommonVars.autoStack from instance method net.sf.firemox.Magic.Magic() | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 227 |
| Write to static field net.sf.firemox.tools.MToolKit.tbsName from instance method net.sf.firemox.Magic.Magic() | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 223 |
| Bug | Category | Details | Line |
|---|---|---|---|
| The class net.sf.firemox.Magic$1 could be refactored into a named _static_ inner class | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC_ANON | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| Class net.sf.firemox.action.ActionFactory is final but declares protected field net.sf.firemox.action.ActionFactory.PICTURES | STYLE | CI_CONFUSED_INHERITANCE | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.action.AddModifierFromStaticModifier.AddModifierFromStaticModifier(ModifierModel[]) may expose internal representation by storing an externally mutable object into AddModifierFromStaticModifier.modifiers | MALICIOUS_CODE | EI_EXPOSE_REP2 | 42 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Exception is caught when Exception is not thrown in net.sf.firemox.action.AssignDamageFromTo.toString(Ability) | STYLE | REC_CATCH_EXCEPTION | 82 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Method net.sf.firemox.action.GiveManaMulti.toHtmlString(Ability, ContextEventListener) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 138 |
| Method net.sf.firemox.action.GiveManaMulti.toString(Ability) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 176 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Method net.sf.firemox.action.InputChoice.getActionList(Ability, MAction[], int, ContextEventListener) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 290 |
| Method net.sf.firemox.action.InputChoice.toHtmlString(Ability, ContextEventListener) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 185 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Unchecked/unconfirmed cast from net.sf.firemox.clickable.target.Target to net.sf.firemox.clickable.target.card.MCard in net.sf.firemox.action.ModifyTargetableRegister.modifyRegister(MCard, Target, int, int, Operation) | STYLE | BC_UNCONFIRMED_CAST | 144 |
| Unchecked/unconfirmed cast from net.sf.firemox.clickable.target.Target to net.sf.firemox.clickable.target.player.Player in net.sf.firemox.action.ModifyTargetableRegister.modifyRegister(MCard, Target, int, int, Operation) | STYLE | BC_UNCONFIRMED_CAST | 143 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Unchecked/unconfirmed cast from net.sf.firemox.ui.wizard.Wizard to net.sf.firemox.ui.wizard.Arrange in net.sf.firemox.action.MoveCard.replayAction(ContextEventListener, Ability, Wizard) | STYLE | BC_UNCONFIRMED_CAST | 111 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Unchecked/unconfirmed cast from net.sf.firemox.clickable.target.Target to net.sf.firemox.clickable.target.card.MCard in net.sf.firemox.action.MoveObject.checkObject(Ability, Target, int) | STYLE | BC_UNCONFIRMED_CAST | 148 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Write to static field net.sf.firemox.stack.EventManager.nextCurrentPlayer from instance method net.sf.firemox.action.NextCurrentPlayer.play(ContextEventListener, Ability) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 67 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.action.PayMana.thresholdColored isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| net.sf.firemox.action.PayMana.useMana isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| Method net.sf.firemox.action.PayMana.toHtmlString(int[]) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 122 |
| Method net.sf.firemox.action.PayMana.toString(Ability) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 557 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Unchecked/unconfirmed cast from net.sf.firemox.clickable.target.Target to net.sf.firemox.clickable.target.card.MCard in net.sf.firemox.action.RemoveObject.checkObject(Target, int) | STYLE | BC_UNCONFIRMED_CAST | 91 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Unchecked/unconfirmed cast from net.sf.firemox.action.MAction to net.sf.firemox.action.Tap in net.sf.firemox.action.Tap.equal(MAction) | STYLE | BC_UNCONFIRMED_CAST | 132 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.action.UnregisterThis.instance isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 68 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Write to static field net.sf.firemox.action.ActionFactory.currentAction from instance method net.sf.firemox.action.UserAction.UserAction(String, String) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 91 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.action.WaitActivatedChoice.opponentResponse isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| Write to static field net.sf.firemox.stack.StackManager.idActivePlayer from instance method net.sf.firemox.action.WaitActivatedChoice.waitAbilityChoice(Player) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 182 |
| Write to static field net.sf.firemox.stack.StackManager.idHandedPlayer from instance method net.sf.firemox.action.WaitActivatedChoice.waitAbilityChoice(Player) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 183 |
| Write to static field net.sf.firemox.stack.StackManager.oldIdHandedPlayer from instance method net.sf.firemox.action.WaitActivatedChoice.waitAbilityChoice(Player) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 194 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Class net.sf.firemox.action.target.AbstractTarget implements same interface as superclass | STYLE | RI_REDUNDANT_INTERFACES | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.chart.CardColor defines compareTo(Object) and uses Object.equals() | BAD_PRACTICE | EQ_COMPARETO_USE_OBJECT_EQUALS | 27 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.chart.CardTypes defines compareTo(Object) and uses Object.equals() | BAD_PRACTICE | EQ_COMPARETO_USE_OBJECT_EQUALS | 27 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Unchecked/unconfirmed cast from net.sf.firemox.chart.datasets.Dataset to net.sf.firemox.chart.datasets.BarDataset in net.sf.firemox.chart.ChartFilter.createPlot(Dataset, Map) | STYLE | BC_UNCONFIRMED_CAST | 85 |
| Unchecked/unconfirmed cast from net.sf.firemox.chart.datasets.Dataset to org.jfree.data.category.DefaultCategoryDataset in net.sf.firemox.chart.ChartFilter.createPlot(Dataset, Map) | STYLE | BC_UNCONFIRMED_CAST | 88 |
| Unchecked/unconfirmed cast from net.sf.firemox.chart.datasets.Dataset to org.jfree.data.general.PieDataset in net.sf.firemox.chart.ChartFilter.createPlot(Dataset, Map) | STYLE | BC_UNCONFIRMED_CAST | 82 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Should net.sf.firemox.chart.ChartFilter$MAreaPlot be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| Should net.sf.firemox.chart.ChartFilter$MBarPlot be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| Should net.sf.firemox.chart.ChartFilter$MPiePlot be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.chart.datasets.BarDataset is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.chart.datasets.CategoryDataset is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.chart.datasets.PieDataset is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| Write to static field net.sf.firemox.stack.StackManager.idActivePlayer from instance method net.sf.firemox.clickable.ability.Ability.resolveStack() | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 359 |
| Write to static field net.sf.firemox.clickable.ability.AbilityFactory.lastInstance from instance method net.sf.firemox.clickable.ability.Ability.Ability(InputStream) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 86 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.clickable.ability.AbstractAbility.actionList() may expose internal representation by returning AbstractAbility.actionList | MALICIOUS_CODE | EI_EXPOSE_REP | 68 |
| net.sf.firemox.clickable.ability.AbstractAbility.effectList() may expose internal representation by returning AbstractAbility.effectList | MALICIOUS_CODE | EI_EXPOSE_REP | 73 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Method net.sf.firemox.clickable.ability.Optimization.addTo(Ability, ContextEventListener, List) uses the same code for two switch clauses | STYLE | DB_DUPLICATE_SWITCH_CLAUSES | 98 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.clickable.ability.SystemAbility.effectList() may expose internal representation by returning SystemAbility.effectList | MALICIOUS_CODE | EI_EXPOSE_REP | 136 |
| net.sf.firemox.clickable.ability.SystemAbility.instance isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 173 |
| Bug | Category | Details | Line |
|---|---|---|---|
| The class net.sf.firemox.clickable.ability.TriggeredAbilitySet$NestedAbility could be refactored into a _static_ inner class | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC_NEEDS_THIS | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.clickable.ability.UserAbility.actionList() may expose internal representation by returning UserAbility.actionList | MALICIOUS_CODE | EI_EXPOSE_REP | 255 |
| net.sf.firemox.clickable.ability.UserAbility.effectList() may expose internal representation by returning UserAbility.effectList | MALICIOUS_CODE | EI_EXPOSE_REP | 260 |
| Bad comparison of signed byte with 128 in net.sf.firemox.clickable.ability.UserAbility.clickOn(byte[]) | CORRECTNESS | INT_BAD_COMPARISON_WITH_SIGNED_BYTE | 309 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Write to static field net.sf.firemox.clickable.action.ChosenCostPanel.ttClick from instance method net.sf.firemox.clickable.action.ChosenCostPanel.initialize() | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 218 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Comparison of String objects using == or != in net.sf.firemox.clickable.action.JChosenAction.getToolTipText() | BAD_PRACTICE | ES_COMPARING_STRINGS_WITH_EQ | 111 |
| Write to static field net.sf.firemox.clickable.action.JChosenAction.completingImage from instance method net.sf.firemox.clickable.action.JChosenAction.JChosenAction(ActionContextWrapper) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 86 |
| Write to static field net.sf.firemox.clickable.action.JChosenAction.uncompletedImage from instance method net.sf.firemox.clickable.action.JChosenAction.JChosenAction(ActionContextWrapper) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 84 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Exception is caught when Exception is not thrown in net.sf.firemox.clickable.mana.Mana.init(String) | STYLE | REC_CATCH_EXCEPTION | 146 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.clickable.target.TargetFactory.abilitiesMenu isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| net.sf.firemox.clickable.target.TargetFactory.tooltipDirtyDataBase isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| net.sf.firemox.clickable.target.TargetFactory.tooltipInvalidTarget isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| net.sf.firemox.clickable.target.TargetFactory.tooltipValidTarget isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| net.sf.firemox.clickable.target.TargetFactory.triggerTargetable isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| Field AbstractCard.ui masks field in superclass javax.swing.JComponent | CORRECTNESS | MF_CLASS_MASKS_FIELD | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| Write to static field net.sf.firemox.clickable.target.card.CardFactory.lastCardName from instance method net.sf.firemox.clickable.target.card.AbstractCardModel.setCardName(String) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 254 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.clickable.target.card.Attachment.getModifiers() may expose internal representation by returning Attachment.modifiers | MALICIOUS_CODE | EI_EXPOSE_REP | 97 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.clickable.target.card.CardFactory.borderColor isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| net.sf.firemox.clickable.target.card.CardFactory.cardHeight isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| net.sf.firemox.clickable.target.card.CardFactory.cardWidth isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| net.sf.firemox.clickable.target.card.CardFactory.countItem isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| net.sf.firemox.clickable.target.card.CardFactory.exportedProperties isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| net.sf.firemox.clickable.target.card.CardFactory.powerToughnessColor isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| net.sf.firemox.clickable.target.card.CardFactory.ttHeader isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| net.sf.firemox.clickable.target.card.CardFactory.exportedIdCardNames is a mutable array | MALICIOUS_CODE | MS_MUTABLE_ARRAY | Not available |
| net.sf.firemox.clickable.target.card.CardFactory.exportedIdCardValues is a mutable array | MALICIOUS_CODE | MS_MUTABLE_ARRAY | Not available |
| net.sf.firemox.clickable.target.card.CardFactory.expandItem should be package protected | MALICIOUS_CODE | MS_PKGPROTECT | Not available |
| net.sf.firemox.clickable.target.card.CardFactory.gatherItem should be package protected | MALICIOUS_CODE | MS_PKGPROTECT | Not available |
| net.sf.firemox.clickable.target.card.CardFactory.previewCard should be package protected | MALICIOUS_CODE | MS_PKGPROTECT | 663 |
| net.sf.firemox.clickable.target.card.CardFactory.propertyPictures should be package protected | MALICIOUS_CODE | MS_PKGPROTECT | Not available |
| net.sf.firemox.clickable.target.card.CardFactory.propertyPicturesHTML should be package protected | MALICIOUS_CODE | MS_PKGPROTECT | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.clickable.target.card.CardModelImpl.getAbilities() may expose internal representation by returning CardModelImpl.abilities | MALICIOUS_CODE | EI_EXPOSE_REP | 129 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.clickable.target.card.DelayedCard.DelayedCard(TriggeredAbility, List, int[], Target, Target) may expose internal representation by storing an externally mutable object into DelayedCard.registers | MALICIOUS_CODE | EI_EXPOSE_REP2 | 75 |
| Class net.sf.firemox.clickable.target.card.DelayedCard defines non-transient non-serializable instance field ability | BAD_PRACTICE | SE_BAD_FIELD | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.clickable.target.card.LastKnownCard.LastKnownCard(MCard, int, int, int, boolean, int[], Player, Player, Set, int, int) may expose internal representation by storing an externally mutable object into LastKnownCard.cachedRegisters | MALICIOUS_CODE | EI_EXPOSE_REP2 | 79 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Class net.sf.firemox.clickable.target.card.MCard defines non-transient non-serializable instance field abilityModifier | BAD_PRACTICE | SE_BAD_FIELD | Not available |
| Class net.sf.firemox.clickable.target.card.MCard defines non-transient non-serializable instance field colorModifier | BAD_PRACTICE | SE_BAD_FIELD | Not available |
| Class net.sf.firemox.clickable.target.card.MCard defines non-transient non-serializable instance field idCardModifier | BAD_PRACTICE | SE_BAD_FIELD | Not available |
| Class net.sf.firemox.clickable.target.card.MCard defines non-transient non-serializable instance field originalDatabase | BAD_PRACTICE | SE_BAD_FIELD | Not available |
| Class net.sf.firemox.clickable.target.card.MCard defines non-transient non-serializable instance field playableZoneModifier | BAD_PRACTICE | SE_BAD_FIELD | Not available |
| Class net.sf.firemox.clickable.target.card.MCard defines non-transient non-serializable instance field propertyModifier | BAD_PRACTICE | SE_BAD_FIELD | Not available |
| Write to static field net.sf.firemox.clickable.target.TargetFactory.triggerTargetable from instance method net.sf.firemox.clickable.target.card.MCard.mouseClicked(MouseEvent) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 797 |
| Write to static field net.sf.firemox.clickable.target.TargetFactory.triggerTargetable from instance method net.sf.firemox.clickable.target.card.MCard.mouseClicked(MouseEvent) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 870 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Comparison of String objects using == or != in net.sf.firemox.clickable.target.card.SystemCard.actionPerformed(ActionEvent) | BAD_PRACTICE | ES_COMPARING_STRINGS_WITH_EQ | 67 |
| net.sf.firemox.clickable.target.card.SystemCard.instance isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 45 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.clickable.target.card.TriggeredCard.cardHeight isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | Not available |
| net.sf.firemox.clickable.target.card.TriggeredCard.cardWidth isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | Not available |
| Class net.sf.firemox.clickable.target.card.TriggeredCard implements same interface as superclass | STYLE | RI_REDUNDANT_INTERFACES | Not available |
| Class net.sf.firemox.clickable.target.card.TriggeredCard defines non-transient non-serializable instance field cachedImage | BAD_PRACTICE | SE_BAD_FIELD | Not available |
| Class net.sf.firemox.clickable.target.card.TriggeredCard defines non-transient non-serializable instance field cachedScaledImage | BAD_PRACTICE | SE_BAD_FIELD | Not available |
| Class net.sf.firemox.clickable.target.card.TriggeredCard defines non-transient non-serializable instance field context | BAD_PRACTICE | SE_BAD_FIELD | Not available |
| Class net.sf.firemox.clickable.target.card.TriggeredCard defines non-transient non-serializable instance field triggeredAbility | BAD_PRACTICE | SE_BAD_FIELD | Not available |
| java.awt.image.BufferedImage stored into non-transient field TriggeredCard.cachedScaledImage | BAD_PRACTICE | SE_BAD_FIELD_STORE | 225 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Class net.sf.firemox.clickable.target.card.TriggeredCardChoice implements same interface as superclass | STYLE | RI_REDUNDANT_INTERFACES | Not available |
| Write to static field net.sf.firemox.clickable.target.card.TriggeredCardChoice.waitingTriggered from instance method net.sf.firemox.clickable.target.card.TriggeredCardChoice.newSpell() | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 88 |
| TriggeredCardChoice.contexts not initialized in constructor | STYLE | UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR | Not available |
| TriggeredCardChoice.either not initialized in constructor | STYLE | UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| Random object created and used only once in net.sf.firemox.clickable.target.card.VirtualCard.updateSizes() | BAD_PRACTICE | DMI_RANDOM_USED_ONLY_ONCE | 649 |
| Comparison of String objects using == or != in net.sf.firemox.clickable.target.card.VirtualCard.getTooltipString() | BAD_PRACTICE | ES_COMPARING_STRINGS_WITH_EQ | 554 |
| Comparison of String objects using == or != in net.sf.firemox.clickable.target.card.VirtualCard.paintComponent(Graphics) | BAD_PRACTICE | ES_COMPARING_STRINGS_WITH_EQ | 276 |
| int division result cast to double or float in net.sf.firemox.clickable.target.card.VirtualCard.paintComponent(Graphics) | STYLE | ICAST_IDIV_CAST_TO_DOUBLE | 279 |
| int division result cast to double or float in net.sf.firemox.clickable.target.card.VirtualCard.paintComponent(Graphics) | STYLE | ICAST_IDIV_CAST_TO_DOUBLE | 284 |
| Class net.sf.firemox.clickable.target.card.VirtualCard defines non-transient non-serializable instance field cardInfoFilter | BAD_PRACTICE | SE_BAD_FIELD | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| Opponent.nickName not initialized in constructor | STYLE | UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| Use of non-localized String.toUpperCase() or String.toLowerCase | I18N | DM_CONVERT_CASE | 650 |
| Comparison of String objects using == or != in net.sf.firemox.clickable.target.player.Player.paint(Graphics) | BAD_PRACTICE | ES_COMPARING_STRINGS_WITH_EQ | 776 |
| net.sf.firemox.clickable.target.player.Player.SETTINGS should be package protected | MALICIOUS_CODE | MS_PKGPROTECT | 836 |
| Write to static field net.sf.firemox.stack.StackManager.idActivePlayer from instance method net.sf.firemox.clickable.target.player.Player.setActivePlayer() | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 395 |
| Write to static field net.sf.firemox.stack.StackManager.idHandedPlayer from instance method net.sf.firemox.clickable.target.player.Player.setHandedPlayer() | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 408 |
| Write to static field net.sf.firemox.stack.StackManager.idActivePlayer from instance method net.sf.firemox.clickable.target.player.Player.waitTriggeredBufferChoiceRec() | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 500 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.database.DatabaseCard.clone() does not call super.clone() | BAD_PRACTICE | CN_IDIOM_NO_SUPER_CALL | 51 |
| net.sf.firemox.database.DatabaseCard.getPictureProxies() may expose internal representation by returning DatabaseCard.pictureProxies | MALICIOUS_CODE | EI_EXPOSE_REP | 145 |
| net.sf.firemox.database.DatabaseCard.setPictureProxies(Proxy[]) may expose internal representation by storing an externally mutable object into DatabaseCard.pictureProxies | MALICIOUS_CODE | EI_EXPOSE_REP2 | 501 |
| Exception is caught when Exception is not thrown in net.sf.firemox.database.DatabaseCard.getPictureStream() | STYLE | REC_CATCH_EXCEPTION | 278 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.database.DatabaseFactory.backImage isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| net.sf.firemox.database.DatabaseFactory.damageImage isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| net.sf.firemox.database.DatabaseFactory.damageScaledImage isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| net.sf.firemox.database.DatabaseFactory.propertiesCacheConfig isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| net.sf.firemox.database.DatabaseFactory.scaledBackImage isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| net.sf.firemox.database.DatabaseFactory.dataProxies is a mutable array | MALICIOUS_CODE | MS_MUTABLE_ARRAY | Not available |
| net.sf.firemox.database.DatabaseFactory.pictureProxies is a mutable array | MALICIOUS_CODE | MS_MUTABLE_ARRAY | Not available |
| net.sf.firemox.database.DatabaseFactory.blankImage isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | Not available |
| Redundant nullcheck of res, which is known to be non-null in net.sf.firemox.database.DatabaseFactory.getDatabase(String, CardModel, Map) | STYLE | RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE | 175 |
| Exception is caught when Exception is not thrown in net.sf.firemox.database.DatabaseFactory.init(InputStream) | STYLE | REC_CATCH_EXCEPTION | 415 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Use of non-localized String.toUpperCase() or String.toLowerCase | I18N | DM_CONVERT_CASE | 144 |
| Use of non-localized String.toUpperCase() or String.toLowerCase | I18N | DM_CONVERT_CASE | 339 |
| Use of non-localized String.toUpperCase() or String.toLowerCase | I18N | DM_CONVERT_CASE | 355 |
| net.sf.firemox.database.Proxy.getStringFromStream(CardModel, Map) may fail to close stream | BAD_PRACTICE | OS_OPEN_STREAM | 246 |
| Exception is caught when Exception is not thrown in net.sf.firemox.database.Proxy.getLocalPictures(CardModel, Map) | STYLE | REC_CATCH_EXCEPTION | 408 |
| Exception is caught when Exception is not thrown in net.sf.firemox.database.Proxy.getRemotePictures(CardModel, Map) | STYLE | REC_CATCH_EXCEPTION | 382 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Use of non-localized String.toUpperCase() or String.toLowerCase | I18N | DM_CONVERT_CASE | 51 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Exception is caught when Exception is not thrown in net.sf.firemox.database.XmlDeckTranslator.convert(String) | STYLE | REC_CATCH_EXCEPTION | 71 |
| Write to static field net.sf.firemox.database.XmlDeckTranslator.config from instance method net.sf.firemox.database.XmlDeckTranslator.XmlDeckTranslator() | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 48 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.database.data.CollectionData.CollectionData(PropertyConfig, String[]) may expose internal representation by storing an externally mutable object into CollectionData.values | MALICIOUS_CODE | EI_EXPOSE_REP2 | 53 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.database.propertyconfig.PropertyConfig defines hashCode and uses Object.equals() | BAD_PRACTICE | HE_HASHCODE_USE_OBJECT_EQUALS | 88 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.database.propertyconfig.PropertyProxyConfig.values isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 60 |
| Write to static field net.sf.firemox.expression.StringMethod.testedString from instance method net.sf.firemox.database.propertyconfig.PropertyProxyConfig.parseProperty(String, String, Proxy) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 95 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Use of non-localized String.toUpperCase() or String.toLowerCase | I18N | DM_CONVERT_CASE | 202 |
| net.sf.firemox.deckbuilder.BuildBook.build() may fail to close stream | BAD_PRACTICE | OS_OPEN_STREAM | 104 |
| net.sf.firemox.deckbuilder.BuildBook.getImage(String) may fail to close stream on exception | BAD_PRACTICE | OS_OPEN_STREAM_EXCEPTION_PATH | 232 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Exception is caught when Exception is not thrown in net.sf.firemox.deckbuilder.CardLoader.CardLoader(TimerGlassPane) | STYLE | REC_CATCH_EXCEPTION | 74 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Class net.sf.firemox.deckbuilder.CardView defines non-transient non-serializable instance field databaseCard | BAD_PRACTICE | SE_BAD_FIELD | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| Class net.sf.firemox.deckbuilder.ConstraintsChecker defines non-transient non-serializable instance field deck | BAD_PRACTICE | SE_BAD_FIELD | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.deckbuilder.Deck.currentDeck isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.deckbuilder.DeckConstraint defines compareTo(DeckConstraint) and uses Object.equals() | BAD_PRACTICE | EQ_COMPARETO_USE_OBJECT_EQUALS | 123-129 |
| Redundant nullcheck of net.sf.firemox.test.DeckCounter.lastRanCard which is known to be null in net.sf.firemox.deckbuilder.DeckConstraint.validate(Deck) | STYLE | RCN_REDUNDANT_NULLCHECK_OF_NULL_VALUE | 102 |
| Write to static field net.sf.firemox.deckbuilder.Deck.currentDeck from instance method net.sf.firemox.deckbuilder.DeckConstraint.validate(Deck) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 97 |
| Write to static field net.sf.firemox.test.DeckCounter.lastRanCard from instance method net.sf.firemox.deckbuilder.DeckConstraint.validate(Deck) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 98 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.deckbuilder.DeckConstraints.MASTER isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.deckbuilder.MdbLoader.loadTBSSettings(String) invokes System.exit(...), which shuts down the entire virtual machine | BAD_PRACTICE | DM_EXIT | 491 |
| net.sf.firemox.deckbuilder.MdbLoader.saveTBSSettings(String) invokes System.exit(...), which shuts down the entire virtual machine | BAD_PRACTICE | DM_EXIT | 452 |
| net.sf.firemox.deckbuilder.MdbLoader.backPicture isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | 104 |
| net.sf.firemox.deckbuilder.MdbLoader.coloredManaBigURL isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| net.sf.firemox.deckbuilder.MdbLoader.coloredManaSmlURL isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| net.sf.firemox.deckbuilder.MdbLoader.colorlessBigURL isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| net.sf.firemox.deckbuilder.MdbLoader.colorlessURL isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| net.sf.firemox.deckbuilder.MdbLoader.damagePicture isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | 109 |
| net.sf.firemox.deckbuilder.MdbLoader.unknownSmlMana isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| net.sf.firemox.deckbuilder.MdbLoader.unknownSmlManaHtml isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| net.sf.firemox.deckbuilder.MdbLoader.coloredBigManas is a mutable array | MALICIOUS_CODE | MS_MUTABLE_ARRAY | Not available |
| net.sf.firemox.deckbuilder.MdbLoader.coloredSmlManas is a mutable array | MALICIOUS_CODE | MS_MUTABLE_ARRAY | Not available |
| net.sf.firemox.deckbuilder.MdbLoader.coloredSmlManasHtml is a mutable array | MALICIOUS_CODE | MS_MUTABLE_ARRAY | Not available |
| net.sf.firemox.deckbuilder.MdbLoader.colorlessSmlManas is a mutable array | MALICIOUS_CODE | MS_MUTABLE_ARRAY | Not available |
| net.sf.firemox.deckbuilder.MdbLoader.colorlessSmlManasHtml is a mutable array | MALICIOUS_CODE | MS_MUTABLE_ARRAY | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.event.MEventListener.CAN_I_CAST_ABILITIES is a mutable array | MALICIOUS_CODE | MS_MUTABLE_ARRAY | 311 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Use of non-localized String.toUpperCase() or String.toLowerCase | I18N | DM_CONVERT_CASE | 133 |
| net.sf.firemox.event.TriggeredEvent.replacement should be package protected | MALICIOUS_CODE | MS_PKGPROTECT | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| Class net.sf.firemox.event.UncaughtException is not derived from an Exception, even though it is named as such | BAD_PRACTICE | NM_CLASS_NOT_EXCEPTION | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| Unchecked/unconfirmed cast from net.sf.firemox.event.MEventListener to net.sf.firemox.event.phase.PhaseEvent in net.sf.firemox.event.phase.BeforePhase.appendOr(MEventListener) | STYLE | BC_UNCONFIRMED_CAST | 160 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Unchecked/unconfirmed cast from net.sf.firemox.event.MEventListener to net.sf.firemox.event.phase.PhaseEvent in net.sf.firemox.event.phase.BeginningPhase.appendOr(MEventListener) | STYLE | BC_UNCONFIRMED_CAST | 131 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Unchecked/unconfirmed cast from net.sf.firemox.event.MEventListener to net.sf.firemox.event.phase.PhaseEvent in net.sf.firemox.event.phase.EndOfPhase.appendOr(MEventListener) | STYLE | BC_UNCONFIRMED_CAST | 162 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Write to static field net.sf.firemox.stack.EventManager.nextPhaseIndex from instance method net.sf.firemox.event.phase.PhaseFilter.setNextPhase(int) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 69 |
| Write to static field net.sf.firemox.stack.EventManager.nextPhaseIndex from instance method net.sf.firemox.event.phase.PhaseFilter.setNextPhase(int) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 74 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.expression.Counter.superTested isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | 144 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.expression.DeckCounter.lastRanTest should be package protected | MALICIOUS_CODE | MS_PKGPROTECT | Not available |
| Write to static field net.sf.firemox.expression.DeckCounter.lastRanTest from instance method net.sf.firemox.expression.DeckCounter.getValue(Ability, Target, ContextEventListener) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 76 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Exception is caught when Exception is not thrown in net.sf.firemox.expression.ObjectValue.ObjectValue(InputStream) | STYLE | REC_CATCH_EXCEPTION | 76 |
| Exception is caught when Exception is not thrown in net.sf.firemox.expression.ObjectValue.getObject(Ability, Target, ContextEventListener) | STYLE | REC_CATCH_EXCEPTION | 91 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.expression.StringMethod.testedString isn't final and can't be protected from malicious code | MALICIOUS_CODE | MS_CANNOT_BE_FINAL | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| Exception is caught when Exception is not thrown in net.sf.firemox.mail.MailUtils.sendEmail(String, String, String[], String, String, List, Header[], String, String) | STYLE | REC_CATCH_EXCEPTION | 177 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Exception is caught when Exception is not thrown in net.sf.firemox.management.MonitoredCheckContent.run() | STYLE | REC_CATCH_EXCEPTION | 239 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.modifier.AbilityModifier.AbilityModifier(ModifierContext, Operation, Ability[]) may expose internal representation by storing an externally mutable object into AbilityModifier.abilitiesToAdd | MALICIOUS_CODE | EI_EXPOSE_REP2 | 49 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Redundant nullcheck of net.sf.firemox.modifier.Modifier.next, which is known to be non-null in net.sf.firemox.modifier.Modifier.addModifier(Modifier) | STYLE | RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE | 129 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.modifier.model.AbilityModifierModel.clone() does not call super.clone() | BAD_PRACTICE | CN_IDIOM_NO_SUPER_CALL | 40 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.modifier.model.AdditionalCostModifierModel.clone() does not call super.clone() | BAD_PRACTICE | CN_IDIOM_NO_SUPER_CALL | 38 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.modifier.model.ColorModifierModel.clone() does not call super.clone() | BAD_PRACTICE | CN_IDIOM_NO_SUPER_CALL | 47 |
| Method net.sf.firemox.modifier.model.ColorModifierModel.toHtmlString(Ability, ContextEventListener) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 106 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.modifier.model.ControllerModifierModel.clone() does not call super.clone() | BAD_PRACTICE | CN_IDIOM_NO_SUPER_CALL | 36 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.modifier.model.IdCardModifierModel.clone() does not call super.clone() | BAD_PRACTICE | CN_IDIOM_NO_SUPER_CALL | 44 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.modifier.model.ObjectAbilityModifierModel.clone() does not call super.clone() | BAD_PRACTICE | CN_IDIOM_NO_SUPER_CALL | 35 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.modifier.model.PlayableZoneModifierModel.clone() does not call super.clone() | BAD_PRACTICE | CN_IDIOM_NO_SUPER_CALL | 37 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.modifier.model.PropertyModifierModel.clone() does not call super.clone() | BAD_PRACTICE | CN_IDIOM_NO_SUPER_CALL | 43 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sf.firemox.modifier.model.RegisterIndirectionModel.clone() does not call super.clone() | BAD_PRACTICE | CN_IDIOM_NO_SUPER_CALL | 44 |