GWicke has uploaded a new change for review.

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


Change subject: Fix a crasher and be more robust on corrupped data-parsoid
......................................................................

Fix a crasher and be more robust on corrupped data-parsoid

* Fixes crasher
http://parsoid.wmflabs.org:8001/result/9d3536b7b58b71c958090a0e99eea3e5467e2907/ar/%D8%AA%D9%8A_%D9%81%D9%8A_%D8%A3%D9%83%D8%B3_%D9%83%D9%8A%D9%88_/_%D8%AF%D8%A8%D8%B3%D9%83
* Deals with absent dp.keys, for example when using cached HTML

Change-Id: I3bed840280e5dda175372684a9447aa1d99d2011
---
M js/lib/mediawiki.DOMPostProcessor.js
M js/lib/mediawiki.WikitextSerializer.js
2 files changed, 6 insertions(+), 2 deletions(-)


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

diff --git a/js/lib/mediawiki.DOMPostProcessor.js 
b/js/lib/mediawiki.DOMPostProcessor.js
index 05b804a..001c924 100644
--- a/js/lib/mediawiki.DOMPostProcessor.js
+++ b/js/lib/mediawiki.DOMPostProcessor.js
@@ -1464,7 +1464,10 @@
                                                // to other transclusions. 
Should match the index of
                                                // the corresponding private 
metadata in keyArrays
                                                // above.
-                                               a.args.i = infoIndex++;
+                                               if (a.args) { // XXX: not sure 
why args can be undefined here
+                                                       a.args.i = infoIndex;
+                                               }
+                                               infoIndex++;
                                                return {template: a.args};
                                        }
                                });
diff --git a/js/lib/mediawiki.WikitextSerializer.js 
b/js/lib/mediawiki.WikitextSerializer.js
index cfefd49..75c55fa 100644
--- a/js/lib/mediawiki.WikitextSerializer.js
+++ b/js/lib/mediawiki.WikitextSerializer.js
@@ -2641,7 +2641,8 @@
                        var argBuf = [],
                                keys = Object.keys(tpl.params),
                                // the original keys in order
-                               origKeys = tpl.i !== undefined ? dp.keys[tpl.i] 
: [],
+                               origKeys = dp.keys && tpl.i !== undefined ?
+                                                               dp.keys[tpl.i] 
|| [] : [],
                                n = keys.length;
                        if (n > 0) {
                                var numericIndex = 1,

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

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

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

Reply via email to