Fixed 139643: [typing] Visual artifact left after creating a string
diff --git a/org.eclipse.jface.text/src/org/eclipse/jface/text/link/LinkedModeUI.java b/org.eclipse.jface.text/src/org/eclipse/jface/text/link/LinkedModeUI.java
index b00b4f8..89c2e12 100644
--- a/org.eclipse.jface.text/src/org/eclipse/jface/text/link/LinkedModeUI.java
+++ b/org.eclipse.jface.text/src/org/eclipse/jface/text/link/LinkedModeUI.java
@@ -1151,9 +1151,6 @@
 		}
 
 
-		if (fExitPosition != null)
-			fExitPosition.getDocument().removePosition(fExitPosition);
-
 		if ((flags & ILinkedModeListener.UPDATE_CARET) != 0 && fExitPosition != null && fFramePosition != fExitPosition && !fExitPosition.isDeleted())
 			switchPosition(fExitPosition, true, false);
 
@@ -1168,6 +1165,9 @@
 
 		Runnable runnable= new Runnable() {
 			public void run() {
+				if (fExitPosition != null)
+					fExitPosition.getDocument().removePosition(fExitPosition);
+
 				for (Iterator iter = docs.iterator(); iter.hasNext(); ) {
 					IDocument doc= (IDocument) iter.next();
 					doc.removePositionUpdater(fPositionUpdater);