diff options
-rw-r--r-- | plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/CDOObjectImpl.java | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/CDOObjectImpl.java b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/CDOObjectImpl.java index 993b59eed2..34ac3121b2 100644 --- a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/CDOObjectImpl.java +++ b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/CDOObjectImpl.java @@ -459,13 +459,15 @@ public class CDOObjectImpl extends MinimalEStoreEObjectImpl implements InternalC if (eSettings != null) { InternalCDOClassInfo classInfo = cdoClassInfo(); + EClass eClass = classInfo.getEClass(); + EStructuralFeature[] persistentMapFeatures = classInfo.getAllPersistentMapFeatures(); int length = persistentMapFeatures.length; for (int i = 0; i < length; i++) { EStructuralFeature feature = persistentMapFeatures[i]; - int featureID = feature.getFeatureID(); + int featureID = eClass.getFeatureID(feature); int index = classInfo.getSettingsFeatureIndex(featureID); CDOStoreEcoreEMap map = (CDOStoreEcoreEMap)eSettings[index]; |