From 8e0281cc31a05907b921ace6c7a314f8b7dd1603 Mon Sep 17 00:00:00 2001 From: Fomafix Date: Wed, 2 Nov 2016 17:58:58 +0100 Subject: [PATCH] mediawiki.action.edit.preview: Substitute $ by $$ in newSubStr for .replace() The newSubStr parameter of .replace() can contain replacement patterns starting with $. The pattern $$ inserts a single $. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/replace#Specifying_a_string_as_a_parameter Bug: T149816 Change-Id: I69619357b7091e302e50398c6258a321346a6240 --- .../src/mediawiki.action/mediawiki.action.edit.preview.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/resources/src/mediawiki.action/mediawiki.action.edit.preview.js b/resources/src/mediawiki.action/mediawiki.action.edit.preview.js index 3b19b35817..f26c336da1 100644 --- a/resources/src/mediawiki.action/mediawiki.action.edit.preview.js +++ b/resources/src/mediawiki.action/mediawiki.action.edit.preview.js @@ -245,7 +245,11 @@ $( '' ).addClass( 'comment' ).html( // There is no equivalent to rawParams mw.message( 'parentheses' ).escaped() - .replace( '$1', parse.parsedsummary ) + // .replace() use $ as start of a pattern. + // $$ is the pattern for '$'. + // The inner .replace() duplicates any $ and + // the outer .replace() simplifies the $$. + .replace( '$1', parse.parsedsummary.replace( /\$/g, '$$$$' ) ) ) ); } -- 2.20.1