[461398] Improve/fix caching in EClass' eAllStructuralFeature list.
diff --git a/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/ecore/impl/EClassImpl.java b/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/ecore/impl/EClassImpl.java
index 9333e9d..00babf5 100644
--- a/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/ecore/impl/EClassImpl.java
+++ b/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/ecore/impl/EClassImpl.java
@@ -806,8 +806,8 @@
{
private static final long serialVersionUID = 1L;
- protected EStructuralFeature [] containments;
- protected EStructuralFeature [] crossReferences;
+ protected EStructuralFeature [] containments = NO_EALL_STRUCTURE_FEATURES_DATA;
+ protected EStructuralFeature [] crossReferences = NO_EALL_STRUCTURE_FEATURES_DATA;
public EAllStructuralFeaturesList(BasicEList<EStructuralFeature> eAllStructuralFeatures)
{
@@ -869,7 +869,7 @@
public EStructuralFeature [] containments()
{
- if (containments == null)
+ if (containments == NO_EALL_STRUCTURE_FEATURES_DATA)
{
init();
}
@@ -878,7 +878,7 @@
public EStructuralFeature [] crossReferences()
{
- if (crossReferences == null)
+ if (crossReferences == NO_EALL_STRUCTURE_FEATURES_DATA)
{
init();
}