diff options
author | emerks | 2011-12-05 14:40:31 +0000 |
---|---|---|
committer | emerks | 2011-12-05 14:40:31 +0000 |
commit | e3d0b4ca88528493f01f2a33e6cc63695126a5e4 (patch) | |
tree | 64844cb3865ea2a322e4169859555a408ecbf5bb /plugins | |
parent | aea10400836967e3d97e13d1433337aee98b539c (diff) | |
download | org.eclipse.emf-e3d0b4ca88528493f01f2a33e6cc63695126a5e4.tar.gz org.eclipse.emf-e3d0b4ca88528493f01f2a33e6cc63695126a5e4.tar.xz org.eclipse.emf-e3d0b4ca88528493f01f2a33e6cc63695126a5e4.zip |
[365585] Guard against null EObject when finding the editing domain.
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/org.eclipse.emf.edit/src/org/eclipse/emf/edit/domain/AdapterFactoryEditingDomain.java | 39 |
1 files changed, 21 insertions, 18 deletions
diff --git a/plugins/org.eclipse.emf.edit/src/org/eclipse/emf/edit/domain/AdapterFactoryEditingDomain.java b/plugins/org.eclipse.emf.edit/src/org/eclipse/emf/edit/domain/AdapterFactoryEditingDomain.java index 85974ae26..7088e656d 100644 --- a/plugins/org.eclipse.emf.edit/src/org/eclipse/emf/edit/domain/AdapterFactoryEditingDomain.java +++ b/plugins/org.eclipse.emf.edit/src/org/eclipse/emf/edit/domain/AdapterFactoryEditingDomain.java @@ -12,7 +12,7 @@ * * </copyright> * - * $Id: AdapterFactoryEditingDomain.java,v 1.30 2011/10/27 17:03:38 emerks Exp $ + * $Id: AdapterFactoryEditingDomain.java,v 1.31 2011/12/05 14:40:31 emerks Exp $ */ package org.eclipse.emf.edit.domain; @@ -173,29 +173,32 @@ public class AdapterFactoryEditingDomain implements EditingDomain */ static public EditingDomain getEditingDomainFor(EObject object) { - Resource resource = object.eResource(); - if (resource != null) + if (object != null) { - IEditingDomainProvider editingDomainProvider = - (IEditingDomainProvider)EcoreUtil.getExistingAdapter(resource, IEditingDomainProvider.class); - if (editingDomainProvider != null) - { - return editingDomainProvider.getEditingDomain(); - } - else + Resource resource = object.eResource(); + if (resource != null) { - ResourceSet resourceSet = resource.getResourceSet(); - if (resourceSet instanceof IEditingDomainProvider) + IEditingDomainProvider editingDomainProvider = + (IEditingDomainProvider)EcoreUtil.getExistingAdapter(resource, IEditingDomainProvider.class); + if (editingDomainProvider != null) { - EditingDomain editingDomain = ((IEditingDomainProvider)resourceSet).getEditingDomain(); - return editingDomain; + return editingDomainProvider.getEditingDomain(); } - else if (resourceSet != null) + else { - editingDomainProvider = (IEditingDomainProvider)EcoreUtil.getExistingAdapter(resourceSet, IEditingDomainProvider.class); - if (editingDomainProvider != null) + ResourceSet resourceSet = resource.getResourceSet(); + if (resourceSet instanceof IEditingDomainProvider) { - return editingDomainProvider.getEditingDomain(); + EditingDomain editingDomain = ((IEditingDomainProvider)resourceSet).getEditingDomain(); + return editingDomain; + } + else if (resourceSet != null) + { + editingDomainProvider = (IEditingDomainProvider)EcoreUtil.getExistingAdapter(resourceSet, IEditingDomainProvider.class); + if (editingDomainProvider != null) + { + return editingDomainProvider.getEditingDomain(); + } } } } |