From 91bd862fcaeed61aeb397379febed94f4e472680 Mon Sep 17 00:00:00 2001 From: Dennis Ushakov Date: Thu, 12 Oct 2017 22:36:24 +0300 Subject: [PATCH] Revert "collect dangling whitespaces and data characters under xmlText (WEB-28313)" This reverts commit 2b99edb --- .../src/com/intellij/lang/html/HtmlParsing.java | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/xml/xml-psi-impl/src/com/intellij/lang/html/HtmlParsing.java b/xml/xml-psi-impl/src/com/intellij/lang/html/HtmlParsing.java index 8f9295bc1269..978bb7872162 100644 --- a/xml/xml-psi-impl/src/com/intellij/lang/html/HtmlParsing.java +++ b/xml/xml-psi-impl/src/com/intellij/lang/html/HtmlParsing.java @@ -60,36 +60,29 @@ public class HtmlParsing { parseProlog(); PsiBuilder.Marker error = null; - PsiBuilder.Marker xmlText = null; while (!eof()) { final IElementType tt = token(); if (tt == XmlTokenType.XML_START_TAG_START) { error = flushError(error); - xmlText = terminateText(xmlText); parseTag(); myTagMarkersStack.clear(); myTagNamesStack.clear(); } else if (tt == XmlTokenType.XML_COMMENT_START) { error = flushError(error); - xmlText = startText(xmlText); parseComment(); } else if (tt == XmlTokenType.XML_PI_START) { error = flushError(error); - xmlText = terminateText(xmlText); parseProcessingInstruction(); } else if (tt == XmlTokenType.XML_CHAR_ENTITY_REF || tt == XmlTokenType.XML_ENTITY_REF_TOKEN) { - xmlText = startText(xmlText); parseReference(); } else if (tt == XmlTokenType.XML_REAL_WHITE_SPACE || tt == XmlTokenType.XML_DATA_CHARACTERS) { error = flushError(error); - xmlText = startText(xmlText); advance(); } else if (tt == XmlTokenType.XML_END_TAG_START) { - xmlText = terminateText(xmlText); final PsiBuilder.Marker tagEndError = myBuilder.mark(); advance(); @@ -107,7 +100,7 @@ public class HtmlParsing { advance(); } } - terminateText(xmlText); + if (error != null) { error.error(XmlErrorMessages.message("top.level.element.is.not.completed")); } @@ -283,6 +276,9 @@ public class HtmlParsing { error(XmlErrorMessages.message("xml.parsing.closing.tag.is.not.done")); } if (hasTags()) doneTag(myTagMarkersStack.peek()); + } else if ((token() == XmlTokenType.XML_REAL_WHITE_SPACE || token() == XmlTokenType.XML_DATA_CHARACTERS) && !hasTags()) { + xmlText = terminateText(xmlText); + advance(); } else { xmlText = startText(xmlText); advance();