diff options
Diffstat (limited to 'plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal')
-rw-r--r-- | plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/CDOLegacyWrapper.java | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/CDOLegacyWrapper.java b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/CDOLegacyWrapper.java index 6254754a95..bac6e0e5ae 100644 --- a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/CDOLegacyWrapper.java +++ b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/CDOLegacyWrapper.java @@ -1006,17 +1006,20 @@ public abstract class CDOLegacyWrapper extends CDOObjectWrapper if (cdoObject != null && !FSMUtil.isTransient(cdoObject)) { EStore eStore = cdoObject.eStore(); - if (feature.isMany()) + if (eStore != null) { - int index = eStore.indexOf(cdoObject, feature, instance.cdoID()); - if (index != EStore.NO_INDEX) + if (feature.isMany()) { - eStore.set(cdoObject, feature, index, instance); + int index = eStore.indexOf(cdoObject, feature, instance.cdoID()); + if (index != EStore.NO_INDEX) + { + eStore.set(cdoObject, feature, index, instance); + } + } + else + { + eStore.set(cdoObject, feature, 0, instance); } - } - else - { - eStore.set(cdoObject, feature, 0, instance); } } else |