diff --git a/ant/org.eclipse.ant.tests.ui/Ant Editor Tests/org/eclipse/ant/tests/ui/editor/AntEditorTests.java b/ant/org.eclipse.ant.tests.ui/Ant Editor Tests/org/eclipse/ant/tests/ui/editor/AntEditorTests.java
index 1e3a829..34b0ab5 100644
--- a/ant/org.eclipse.ant.tests.ui/Ant Editor Tests/org/eclipse/ant/tests/ui/editor/AntEditorTests.java
+++ b/ant/org.eclipse.ant.tests.ui/Ant Editor Tests/org/eclipse/ant/tests/ui/editor/AntEditorTests.java
@@ -274,6 +274,18 @@
 		assertTrue("The hover text must contain the augmented element 'foo'", text.indexOf("foo") > -1);
     }
     
+    /**
+     * Tests that the Ant editor is resilient to using an Augment task that references an unknown id
+     * 
+     * @see https://bugs.eclipse.org/bugs/show_bug.cgi?id=396219
+     * @throws Exception
+     */
+    public void testAugmentMissingId() throws Exception {
+    	IFile file = getIFile("bug396219.ent");
+		IEditorPart part = EditorTestHelper.openInEditor(file, "org.eclipse.ant.ui.internal.editor.AntEditor", true);
+		assertTrue("The opened editor must be the AntEditor", part instanceof AntEditor);
+    }
+    
     public void testHoverRegionWithSpaces() throws PartInitException, BadLocationException {
     	IFile file= getIFile("refid.xml");
     	AntEditor editor= (AntEditor)EditorTestHelper.openInEditor(file, "org.eclipse.ant.ui.internal.editor.AntEditor", true);
diff --git a/ant/org.eclipse.ant.tests.ui/testbuildfiles/bug396219.ent b/ant/org.eclipse.ant.tests.ui/testbuildfiles/bug396219.ent
new file mode 100644
index 0000000..0dcb688
--- /dev/null
+++ b/ant/org.eclipse.ant.tests.ui/testbuildfiles/bug396219.ent
@@ -0,0 +1,10 @@
+<project>
+	<path id="path1"/>
+	<resource id="resource1"/>
+	<propertyset id="property1"/>
+	<target name="augment">
+		<augment id="path">
+			<pathelement location="/foo"/>
+		</augment>
+	</target>
+</project>
\ No newline at end of file
diff --git a/ant/org.eclipse.ant.ui/Ant Tools Support/org/eclipse/ant/internal/ui/model/AntAugmentTaskNode.java b/ant/org.eclipse.ant.ui/Ant Tools Support/org/eclipse/ant/internal/ui/model/AntAugmentTaskNode.java
index f35e2aa..9c418ed 100644
--- a/ant/org.eclipse.ant.ui/Ant Tools Support/org/eclipse/ant/internal/ui/model/AntAugmentTaskNode.java
+++ b/ant/org.eclipse.ant.ui/Ant Tools Support/org/eclipse/ant/internal/ui/model/AntAugmentTaskNode.java
@@ -55,6 +55,11 @@
 			//either a system exit or setting of system property was attempted
 			handleBuildException(new BuildException(AntModelMessages.AntTaskNode_0), AntEditorPreferenceConstants.PROBLEM_SECURITY);
 		}
+		catch(IllegalStateException ise) {
+			//this is thrown when the id to augment does not exist
+			//https://bugs.eclipse.org/bugs/show_bug.cgi?id=396219
+			handleBuildException(new BuildException(ise), AntEditorPreferenceConstants.PROBLEM_TASKS);
+		}
 		return false;
 	}
 	
