Browse Source

Поправки по результатам тестирования

Book Pauk 4 years ago
parent
commit
d658814399
1 changed files with 12 additions and 12 deletions
  1. 12 12
      server/core/sax.js

+ 12 - 12
server/core/sax.js

@@ -93,6 +93,12 @@ function parseSync(xstr, options) {
             }
             tag = tag.toLowerCase();
 
+            if (innerCut.has(tag) && (!cutCounter || cutTag === tag)) {
+                if (!cutCounter)
+                    cutTag = tag;
+                cutCounter++;
+            }
+
             let endTag = (singleTag ? tag : '');
             if (tag === '' || tag[0] !== '/') {
                 _onStartNode(tag, tail, singleTag, cutCounter, cutTag);
@@ -103,12 +109,6 @@ function parseSync(xstr, options) {
             if (endTag)
                 _onEndNode(endTag, tail, singleTag, cutCounter, cutTag);
 
-            if (innerCut.has(tag) && (!cutCounter || cutTag === tag)) {
-                if (!cutCounter)
-                    cutTag = tag;
-                cutCounter++;
-            }
-
             if (cutTag === endTag) {
                 cutCounter = (cutCounter > 0 ? cutCounter - 1 : 0);
                 if (!cutCounter)
@@ -233,6 +233,12 @@ async function parse(xstr, options) {
             }
             tag = tag.toLowerCase();
 
+            if (innerCut.has(tag) && (!cutCounter || cutTag === tag)) {
+                if (!cutCounter)
+                    cutTag = tag;
+                cutCounter++;
+            }
+
             let endTag = (singleTag ? tag : '');
             if (tag === '' || tag[0] !== '/') {
                 await _onStartNode(tag, tail, singleTag, cutCounter, cutTag);
@@ -243,12 +249,6 @@ async function parse(xstr, options) {
             if (endTag)
                 await _onEndNode(endTag, tail, singleTag, cutCounter, cutTag);
 
-            if (innerCut.has(tag) && (!cutCounter || cutTag === tag)) {
-                if (!cutCounter)
-                    cutTag = tag;
-                cutCounter++;
-            }
-
             if (cutTag === endTag) {
                 cutCounter = (cutCounter > 0 ? cutCounter - 1 : 0);
                 if (!cutCounter)