Bug 572429: [Input] Improve BasicSourceFragment.equals

Change-Id: I08cc0f7f17fc59caab7ef955d993154e1564adf4
diff --git a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/core/input/BasicSourceFragment.java b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/core/input/BasicSourceFragment.java
index 239a95f..a3b9851 100644
--- a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/core/input/BasicSourceFragment.java
+++ b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/core/input/BasicSourceFragment.java
@@ -74,6 +74,10 @@
 		return this.id.hashCode();
 	}
 	
+	protected Class<?> getFragmentType() {
+		return SourceFragment.class;
+	}
+	
 	@Override
 	public boolean equals(final @Nullable Object obj) {
 		if (this == obj) {
@@ -81,7 +85,8 @@
 		}
 		if (obj instanceof BasicSourceFragment) {
 			final BasicSourceFragment other= (BasicSourceFragment) obj;
-			return (this.id.equals(other.id)
+			return (getFragmentType() == other.getFragmentType()
+					&& this.id.equals(other.id)
 					&& this.fullName.equals(other.fullName)
 					&& this.document.equals(other.document) );
 		}