View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0000139 | Medieval Engineers | Bug | public | 2022-02-18 21:16 | 2022-02-19 15:47 |
Reporter | equinox | Assigned To | equinox | ||
Priority | normal | Severity | minor | Reproducibility | have not tried |
Status | resolved | Resolution | fixed | ||
Product Version | 0.7.2 | ||||
Target Version | 0.7.3.33D4BB | Fixed in Version | 0.7.3.33D4BB | ||
Summary | 0000139: Definition requiring components can be initialized without a definition when deserializing | ||||
Description | When deserializing an entity component container that contains a component that is no longer part of the container's definition the component will still be created, but won't have a definition bound to it. For components that are marked as MyDefinitionRequiredAttribute this violates the contract of that attribute. Instead, we should just drop these illegal components. In the vast majority of cases this happens when a modder removes an existing component from their block, and when that happens dropping the component is better than randomly crashing later, or forcing modders to create components that self destruct when they are initialized without a definition. | ||||
Tags | No tags attached. | ||||
Date Modified | Username | Field | Change |
---|---|---|---|
2022-02-18 21:16 | equinox | New Issue | |
2022-02-18 21:16 | equinox | Assigned To | => equinox |
2022-02-18 21:16 | equinox | Status | new => assigned |
2022-02-18 21:16 | equinox | Status | assigned => in progress |
2022-02-18 21:16 | equinox | Target Version | => 0.7.3.33D4BB |
2022-02-18 21:16 | equinox | Product Version | => 0.7.2 |
2022-02-19 15:47 | equinox | Status | in progress => resolved |
2022-02-19 15:47 | equinox | Resolution | open => fixed |
2022-02-19 15:47 | equinox | Fixed in Version | => 0.7.3.33D4BB |