From f941989c1908402c5d04a9508da1828e68d3803c Mon Sep 17 00:00:00 2001 From: YuviPanda Date: Wed, 24 Apr 2013 00:45:23 +0530 Subject: [PATCH] Revert "Make TemplateRemoveer *actually* remove templates" This reverts commit e0c23a6038411b2295dd83bf7021ae2c3534f523. mark found a way that was not as agricultural --- .../commons/modifications/TemplateRemoveModifier.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/commons/src/main/java/org/wikimedia/commons/modifications/TemplateRemoveModifier.java b/commons/src/main/java/org/wikimedia/commons/modifications/TemplateRemoveModifier.java index ebb74adf0..4cc6bc84f 100644 --- a/commons/src/main/java/org/wikimedia/commons/modifications/TemplateRemoveModifier.java +++ b/commons/src/main/java/org/wikimedia/commons/modifications/TemplateRemoveModifier.java @@ -12,6 +12,10 @@ public class TemplateRemoveModifier extends PageModifier { public static final String PARAM_TEMPLATE_NAME = "template"; + public static final Pattern PATTERN_TEMPLATE_OPEN = Pattern.compile("\\{\\{"); + public static final Pattern PATTERN_TEMPLATE_CLOSE = Pattern.compile("\\}\\}"); + + public TemplateRemoveModifier(String templateName) { super(MODIFIER_NAME); try { @@ -26,7 +30,6 @@ public class TemplateRemoveModifier extends PageModifier { this.params = data; } - // Never get into a land war in Asia. @Override public String doModification(String pageName, String pageContents) { String templateRawName = params.optString(PARAM_TEMPLATE_NAME); @@ -44,14 +47,13 @@ public class TemplateRemoveModifier extends PageModifier { int startIndex = matcher.start(); int curIndex = matcher.end(); while(curIndex < pageContents.length()) { - if(pageContents.substring(curIndex, curIndex + 2).equals("{{")) { + if(PATTERN_TEMPLATE_OPEN.matcher(pageContents).find(curIndex)) { braceCount++; - } else if(pageContents.substring(curIndex, curIndex + 2).equals("}}")) { + } else if(PATTERN_TEMPLATE_CLOSE.matcher(pageContents).find(curIndex)) { braceCount--; } curIndex++; if(braceCount == 0) { - curIndex++; // To account for the last brace in the closing }} pair break; } }