jenkins-bot has submitted this change and it was merged. Change subject: Fix two crashers ......................................................................
Fix two crashers Fixes the following two crashes: ================================== ERROR in ruwiki:Участник:UnCursed: Cannot read property 'nodeType' of null Stack trace: TypeError: Cannot read property 'nodeType' of null at Object.DOMUtils.isElt (/srv/deployment/parsoid/Parsoid/js/lib/mediawiki.DOMUtils.js:31:14) at markFosteredContent (/srv/deployment/parsoid/Parsoid/js/lib/dom.markFosteredContent.js:90:16) at markFosteredContent (/srv/deployment/parsoid/Parsoid/js/lib/dom.markFosteredContent.js:124:5) at markFosteredContent (/srv/deployment/parsoid/Parsoid/js/lib/dom.markFosteredContent.js:124:5) at markFosteredContent (/srv/deployment/parsoid/Parsoid/js/lib/dom.markFosteredContent.js:124:5) at Array.markFosteredContent [as 1] (/srv/deployment/parsoid/Parsoid/js/lib/dom.markFosteredContent.js:124:5) at DOMPostProcessor.doPostProcess (/srv/deployment/parsoid/Parsoid/js/lib/mediawiki.DOMPostProcessor.js:203:22) at EventEmitter.emit (events.js:88:17) at FauxHTML5.TreeBuilder.onEnd (/srv/deployment/parsoid/Parsoid/js/lib/mediawiki.HTML5TreeBuilder.node.js:109:7) at SyncTokenTransformManager.EventEmitter.emit (events.js:85:17) ================================== ERROR in enwiki:Wikipedia:WikiProject_Yugoslavia/Sidebar: INVALID_CHARACTER_ERR (5): the string contains invalid characters Stack trace: INVALID_CHARACTER_ERR: INVALID_CHARACTER_ERR (5): the string contains invalid characters at Object.exports.InvalidCharacterError (/srv/deployment/parsoid/config/node_modules/domino/lib/utils.js:19:52) at HTMLMetaElement.setAttribute (/srv/deployment/parsoid/config/node_modules/domino/lib/Element.js:437:40) at /srv/deployment/parsoid/Parsoid/js/lib/mediawiki.DOMPostProcessor.js:109:10 at Array.forEach (native) at Object.prepareDOM [as run] (/srv/deployment/parsoid/Parsoid/js/lib/mediawiki.DOMPostProcessor.js:108:15) at DOMTraverser.callHandlers (/srv/deployment/parsoid/Parsoid/js/lib/domTraverser.js:38:31) at DOMTraverser.traverse (/srv/deployment/parsoid/Parsoid/js/lib/domTraverser.js:83:17) at DOMTraverser.traverse (/srv/deployment/parsoid/Parsoid/js/lib/domTraverser.js:94:10) at DOMTraverser.traverse (/srv/deployment/parsoid/Parsoid/js/lib/domTraverser.js:94:10) at DOMPostProcessor.doPostProcess (/srv/deployment/parsoid/Parsoid/js/lib/mediawiki.DOMPostProcessor.js:203:22) ================================== Change-Id: I517c7c32a4154c0d59b90f05bbbb803df32fda81 --- M js/lib/dom.markFosteredContent.js M js/lib/mediawiki.DOMPostProcessor.js 2 files changed, 6 insertions(+), 2 deletions(-) Approvals: Subramanya Sastry: Looks good to me, approved jenkins-bot: Verified diff --git a/js/lib/dom.markFosteredContent.js b/js/lib/dom.markFosteredContent.js index aa6bbef..a0b6c0b 100644 --- a/js/lib/dom.markFosteredContent.js +++ b/js/lib/dom.markFosteredContent.js @@ -87,7 +87,7 @@ if ( DU.isMarkerMeta( c, "mw:FosterBox" ) ) { // mark as fostered until we hit the table - while ( !DU.isElt( sibling ) || !DU.hasNodeName( sibling, "table" ) ) { + while ( sibling && ( !DU.isElt( sibling ) || !DU.hasNodeName( sibling, "table" ) ) ) { next = sibling.nextSibling; if ( DU.isElt( sibling ) ) { sibling.data.parsoid.fostered = true; diff --git a/js/lib/mediawiki.DOMPostProcessor.js b/js/lib/mediawiki.DOMPostProcessor.js index 895ce4f..dfae362 100644 --- a/js/lib/mediawiki.DOMPostProcessor.js +++ b/js/lib/mediawiki.DOMPostProcessor.js @@ -106,7 +106,11 @@ if ( /^mw:/.test( type ) ) { var meta = node.ownerDocument.createElement( "meta" ); data.attrs.forEach(function ( attr ) { - meta.setAttribute( attr.name, attr.value ); + try { + meta.setAttribute( attr.name, attr.value ); + } catch(e) { + console.error('WARNING: prepareDOM: Dropped invalid attribute ' + attr); + } }); node.parentNode.insertBefore( meta, node ); DU.deleteNode( node ); -- To view, visit https://gerrit.wikimedia.org/r/90180 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: I517c7c32a4154c0d59b90f05bbbb803df32fda81 Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/extensions/Parsoid Gerrit-Branch: master Gerrit-Owner: GWicke <gwi...@wikimedia.org> Gerrit-Reviewer: Arlolra <abrea...@wikimedia.org> Gerrit-Reviewer: Subramanya Sastry <ssas...@wikimedia.org> Gerrit-Reviewer: jenkins-bot _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits