diff --git a/org.eclipse.ogee.core/src/org/eclipse/ogee/core/UninstallAction.java b/org.eclipse.ogee.core/src/org/eclipse/ogee/core/UninstallAction.java
index 32a3958..fd5dc7d 100644
--- a/org.eclipse.ogee.core/src/org/eclipse/ogee/core/UninstallAction.java
+++ b/org.eclipse.ogee.core/src/org/eclipse/ogee/core/UninstallAction.java
@@ -105,7 +105,7 @@
 						final URI uri = ((ODataEditorInput) editorInput).getUri();
 						final String uriString = uri.trimFragment().toPlatformString(true);
 						IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(uriString));
-						if (file.getFileExtension().equals("odata"))
+						if (file != null && file.getFileExtension().equals("odata"))
 						{
 							odataEditor = true;
 						}
@@ -113,7 +113,7 @@
 					else if (editorInput instanceof IFileEditorInput)
 					{
 						IFile file = ((IFileEditorInput) editorInput).getFile();
-						if (file.getFileExtension().equals("odata"))
+						if (file != null && file.getFileExtension().equals("odata"))
 						{
 							odataEditor = true;
 						}
@@ -123,7 +123,7 @@
 						final URI uri = ((DiagramEditorInput) editorInput).getUri();
 						final String uriString = uri.trimFragment().toPlatformString(true);
 						IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(uriString));
-						if (file.getFileExtension().equals("odata"))
+						if (file != null && file.getFileExtension().equals("odata"))
 						{
 							odataEditor = true;
 						}
