jenkins-bot has submitted this change and it was merged.
Change subject: Followup a054a75: don't reintroduce removed template parameters
......................................................................
Followup a054a75: don't reintroduce removed template parameters
Deep-extending originalData is asking for trouble, because there's
no way to delete anything that way.
Bug: 73134
Change-Id: I44d3e582e04942efceae3e0bdbbaa147095b5146
---
M modules/ve-mw/dm/models/ve.dm.MWTemplateModel.js
1 file changed, 13 insertions(+), 3 deletions(-)
Approvals:
Trevor Parscal: Looks good to me, approved
jenkins-bot: Verified
diff --git a/modules/ve-mw/dm/models/ve.dm.MWTemplateModel.js
b/modules/ve-mw/dm/models/ve.dm.MWTemplateModel.js
index f146104..11d6441 100644
--- a/modules/ve-mw/dm/models/ve.dm.MWTemplateModel.js
+++ b/modules/ve-mw/dm/models/ve.dm.MWTemplateModel.js
@@ -325,7 +325,9 @@
* @inheritdoc
*/
ve.dm.MWTemplateModel.prototype.serialize = function () {
- var name,
+ var name, origName,
+ origData = this.originalData || {},
+ origParams = origData.params || {},
template = { target: this.getTarget(), params: {} },
params = this.getParameters();
@@ -333,10 +335,18 @@
if ( name === '' ) {
continue;
}
- template.params[params[name].getOriginalName()] = { wt:
params[name].getValue() };
+ origName = params[name].getOriginalName();
+ template.params[origName] = ve.extendObject(
+ {},
+ origParams[origName],
+ { wt: params[name].getValue() }
+ );
+
}
- template = ve.extendObject( true, {}, this.originalData || {}, template
);
+ // Performs a non-deep extend, so this won't reintroduce
+ // deleted parameters (bug 73134)
+ template = ve.extendObject( {}, origData, template );
return { template: template };
};
--
To view, visit https://gerrit.wikimedia.org/r/172317
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I44d3e582e04942efceae3e0bdbbaa147095b5146
Gerrit-PatchSet: 2
Gerrit-Project: mediawiki/extensions/VisualEditor
Gerrit-Branch: master
Gerrit-Owner: Catrope <[email protected]>
Gerrit-Reviewer: Trevor Parscal <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits