Arlolra has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/203891

Change subject: Fix findFirstEncapsulationWrapperNode
......................................................................

Fix findFirstEncapsulationWrapperNode

 * It was being short circuited by Extension/ref content in the
   isFirstEncapsulationWrapperNode check.

 * eef3cfea8767453bb0637810b1333d8f25f1d232 exposed this bug while
   rt'ing zhwiki/沈小蘭

Change-Id: If865600754f54b9004d99a379a0997b9ccac4858
---
M lib/mediawiki.DOMUtils.js
1 file changed, 7 insertions(+), 9 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/services/parsoid 
refs/changes/91/203891/1

diff --git a/lib/mediawiki.DOMUtils.js b/lib/mediawiki.DOMUtils.js
index d01fbe6..dfe768c 100644
--- a/lib/mediawiki.DOMUtils.js
+++ b/lib/mediawiki.DOMUtils.js
@@ -1422,19 +1422,17 @@
        /**
         * Find the first wrapper element of encapsulated content.
         */
-       findFirstEncapsulationWrapperNode: function( node ) {
+       findFirstEncapsulationWrapperNode: function(node) {
                if (!this.isTplOrExtToplevelNode(node)) {
                        return null;
                }
-
                var about = node.getAttribute('about');
-               while ( !this.isFirstEncapsulationWrapperNode( node ) ) {
-                       node = this.previousNonDeletedSibling(node);
-                       if ( !node || !isElt(node) || 
node.getAttribute('about') !== about ) {
-                               return null;
-                       }
-               }
-               return node;
+               var prev = node;
+               do {
+                       node = prev;
+                       prev = DU.previousNonDeletedSibling(node);
+               } while (prev && isElt(prev) && prev.getAttribute('about') === 
about);
+               return DU.isFirstEncapsulationWrapperNode(node) ? node : null;
        },
 
        /**

-- 
To view, visit https://gerrit.wikimedia.org/r/203891
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: If865600754f54b9004d99a379a0997b9ccac4858
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/services/parsoid
Gerrit-Branch: master
Gerrit-Owner: Arlolra <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to