From accd4a1b65e40cd307d25f3495371126869b583b Mon Sep 17 00:00:00 2001 From: Jermolene Date: Mon, 17 Oct 2016 19:08:01 +0100 Subject: [PATCH] Fix regexp performance problem introduced in c7b31b02422265e11b68992e58ef5638cf2e568e This fixes a problem introduced in c7b31b02422265e11b68992e58ef5638cf2e568e. The changes by @tobibeer inadvertently made the regular expression evaluation significantly more expensive because of lookahead. The is less elegant but reverts the performance problem. --- core/modules/parsers/wikiparser/rules/syslink.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/core/modules/parsers/wikiparser/rules/syslink.js b/core/modules/parsers/wikiparser/rules/syslink.js index 5189ee82d..6eb2cdcd4 100644 --- a/core/modules/parsers/wikiparser/rules/syslink.js +++ b/core/modules/parsers/wikiparser/rules/syslink.js @@ -19,9 +19,9 @@ exports.init = function(parser) { this.parser = parser; // Regexp to match this.matchRegExp = new RegExp( - "~?\\$:\\/(?:" + - $tw.config.textPrimitives.anyLetter + - "|[\/._-])+", + "~?\\$:\\/[" + + $tw.config.textPrimitives.anyLetter.substr(1,$tw.config.textPrimitives.anyLetter.length - 2) + + "\/._-]+", "mg" ); };