Subramanya Sastry has uploaded a new change for review.

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


Change subject: Bug fix serializing wiki elements nested in html elements
......................................................................

Bug fix serializing wiki elements nested in html elements

* The following wikitext snippet would not serialize the newly
  inserted wikilink as [[Foo]].  It would instead serialize into
  a HTML a-tag instead.

<small data-parsoid="{&quot;stx&quot;:&quot;html&quot;}"><a rel="mw:WikiLink" 
href="Foo">Foo</a></small>

* Reduced test case based on the following bug report in /mnt/bugs on
  parsoid.wmflabs.org

  2013-06-03T09%3A48%3A14.774Z-Le_Prix_du_silence_(film%252C_2008)

* This patch removed the (possibly stale?) check that would return
  an html tag handler for new nodes nested in HTML elements.

* No change in parser test results
  TODO: html2wt tests needed for new content

Change-Id: I7f9b7cf4dd7c1fadaa48ea99f3f1e19a5190afd6
---
M js/lib/mediawiki.DOMUtils.js
M js/lib/mediawiki.WikitextSerializer.js
2 files changed, 3 insertions(+), 13 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Parsoid 
refs/changes/67/67467/1

diff --git a/js/lib/mediawiki.DOMUtils.js b/js/lib/mediawiki.DOMUtils.js
index 4c50893..cc2ec4f 100644
--- a/js/lib/mediawiki.DOMUtils.js
+++ b/js/lib/mediawiki.DOMUtils.js
@@ -135,8 +135,8 @@
                try {
                        return JSON.parse(attVal);
                } catch(e) {
-                       console.warn('ERROR: Could not decode attribute ' +
-                                       name + ' on node ' + n);
+                       console.warn('ERROR: Could not decode attribute-val ' + 
attVal +
+                                       ' for ' + name + ' on node ' + 
n.outerHTML);
                        return defaultVal !== undefined ? defaultVal : {};
                }
        },
diff --git a/js/lib/mediawiki.WikitextSerializer.js 
b/js/lib/mediawiki.WikitextSerializer.js
index 9cf34d1..d389275 100644
--- a/js/lib/mediawiki.WikitextSerializer.js
+++ b/js/lib/mediawiki.WikitextSerializer.js
@@ -2705,16 +2705,7 @@
                }
        }
 
-       if (dp.stx === 'html' ||
-                       ( node.getAttribute('data-parsoid') === null &&
-                         // SSS FIXME: if we get to the root, it wont have a 
parent
-                         // But, why are we getting to the root?
-                         nodeName !== 'meta' && node.parentNode &&
-                         node.parentNode.data &&
-                         node.parentNode.data.parsoid.stx === 'html' ) )
-       {
-               return {handle: self._htmlElementHandler.bind(self)};
-       } else if (self.tagHandlers[nodeName]) {
+       if (dp.stx !== 'html' && self.tagHandlers[nodeName]) {
                handler = self.tagHandlers[nodeName];
                if (!handler.handle) {
                        return {handle: self._htmlElementHandler.bind(self), 
sepnls: handler.sepnls};
@@ -2726,7 +2717,6 @@
                return {handle: self._htmlElementHandler.bind(self)};
        }
 };
-
 
 /**
  * Serialize the content of a text node

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I7f9b7cf4dd7c1fadaa48ea99f3f1e19a5190afd6
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Parsoid
Gerrit-Branch: master
Gerrit-Owner: Subramanya Sastry <[email protected]>

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

Reply via email to