diff --git a/PowerEditor/src/ScitillaComponent/AutoCompletion.cpp b/PowerEditor/src/ScitillaComponent/AutoCompletion.cpp
index 6b9855bc7..e1da03b1e 100644
--- a/PowerEditor/src/ScitillaComponent/AutoCompletion.cpp
+++ b/PowerEditor/src/ScitillaComponent/AutoCompletion.cpp
@@ -370,6 +370,17 @@ bool AutoCompletion::showFunctionComplete()
 
 void AutoCompletion::getCloseTag(char *closeTag, size_t closeTagSize, size_t caretPos, bool isHTML)
 {
+	char prev = (char)_pEditView->execute(SCI_GETCHARAT, caretPos - 2);
+	char prevprev = (char)_pEditView->execute(SCI_GETCHARAT, caretPos - 3);
+
+	// Closing a tag (i.e. "-->") will be ignored
+	if (prevprev == '-' && prev == '-')
+		return;
+
+	// "" and "" will be ignored
+	if (prev == '/')
+		return;
+
 	int flags = SCFIND_REGEXP | SCFIND_POSIX;
 	_pEditView->execute(SCI_SETSEARCHFLAGS, flags);
 	TCHAR tag2find[] = TEXT("<[^\\s>]*");
@@ -407,12 +418,6 @@ void AutoCompletion::getCloseTag(char *closeTag, size_t closeTagSize, size_t car
 		}
 	}
 
-	char tagTail[2];
-	_pEditView->getText(tagTail, caretPos-2, caretPos-1);
-
-	if (tagTail[0] == '/') // "" and "" will be ignored
-		return;
-
 	closeTag[0] = '<';
 	closeTag[1] = '/';
 	_pEditView->getText(closeTag + 2, targetStart + 1, targetEnd);