Fix replacement quoting for replaceAll in filter command
According to String.replaceAll JavaDoc: "Note that backslashes (\) and dollar signs ($) in the replacement string may cause the results to be different than if it were being treated as a literal replacement string; see Matcher.replaceAll. Use java.util.regex.Matcher.quoteReplacement to suppress the special meaning of these characters, if desired." Bug: 536318 Change-Id: Ib70cfec41bf73e14d23d94d14aee05a25b1e87f6 Signed-off-by: Markus Duft <markus.duft@ssi-schaefer.com>
This commit is contained in:
parent
c857e7f09b
commit
303adeb8bf
|
@ -50,6 +50,7 @@
|
|||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.regex.Matcher;
|
||||
|
||||
import org.eclipse.jgit.annotations.Nullable;
|
||||
import org.eclipse.jgit.api.errors.JGitInternalException;
|
||||
|
@ -1438,7 +1439,8 @@ public String getFilterCommand(String filterCommandType)
|
|||
return null;
|
||||
}
|
||||
return filterCommand.replaceAll("%f", //$NON-NLS-1$
|
||||
QuotedString.BOURNE.quote((getPathString())));
|
||||
Matcher.quoteReplacement(
|
||||
QuotedString.BOURNE.quote((getPathString()))));
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in New Issue