Search Issue Tracker
Fixed
Votes
0
Found in [Package]
1.0.0
Issue ID
ECSB-315
Regression
No
Creating an empty ComponentTypeSet throws IndexOutOfRangeException
Reported externally as IN-40851 , and discussed on Slack here
The following code throws an IndexOutOfRangeException:
{code:java}
namespace DefaultNamespace
{
public class Repro : MonoBehaviour
{
private void Awake()
{
var empty = new FixedList128Bytes<ComponentType>();
new ComponentTypeSet(empty);
}
}
} {code}
The issue is that ComponentTypeSet.CheckForDuplicates() assumes there is at least one element in the set. This is a bug; an empty ComponentTypeSet is pointless, but technically valid.
We should fix the bug in CheckForDuplicates(), but also add some tests to existing methods that take ComponentTypeSet and make sure they work correctly if the type set is empty. In most cases, the correct behavior would be to early-out ASAP.
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Out-of-bounds memory access with multiple CanvasRenderers under a Canvas when using Mesh API
- Inspector tries to access file after it was deleted when the file was locked in Inspector window
- Changing Transform values in Search window Inspector loses focus while dragging and stopping mouse without releasing dragging action
- Saving changes on the dirty VFX Graph during the Play mode throws "The referenced script (Unknown) on this Behaviour is missing!" warnings
- VFX Graph Debug Info overlaps the "Initialize" block debug info by default
Add comment