You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by mi...@apache.org on 2018/04/02 20:30:17 UTC
[maven-scm] 02/02: Remove duplicate code
This is an automated email from the ASF dual-hosted git repository.
michaelo pushed a commit to branch SCM-763
in repository https://gitbox.apache.org/repos/asf/maven-scm.git
commit 1afc64df9dd7f5794e3851e26d63a20f3f9a69c2
Author: Michael Osipov <mi...@apache.org>
AuthorDate: Mon Apr 2 22:30:09 2018 +0200
Remove duplicate code
---
.../svn/svnexe/command/SvnCommandLineUtils.java | 35 ++++++++++++++++++++--
1 file changed, 33 insertions(+), 2 deletions(-)
diff --git a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/SvnCommandLineUtils.java b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/SvnCommandLineUtils.java
index eea17e4..6e1e7d7 100644
--- a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/SvnCommandLineUtils.java
+++ b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/SvnCommandLineUtils.java
@@ -223,6 +223,8 @@ public final class SvnCommandLineUtils
String clString = cl.toString();
final String passwordArg = "--password ";
+ String quoteChar;
+ String escapedQuoteChar;
String cryptedPassword;
int pos = clString.indexOf( passwordArg );
@@ -231,9 +233,38 @@ public final class SvnCommandLineUtils
{
String beforePassword = clString.substring( 0, pos + passwordArg.length() );
String afterPassword = clString.substring( pos + passwordArg.length() );
+
if ( Os.isFamily( Os.FAMILY_WINDOWS ) )
{
- cryptedPassword = "*****";
+ quoteChar = "\"";
+ escapedQuoteChar = "\"\"";
+ cryptedPassword = "*****";
+ }
+ else
+ {
+ quoteChar = "'";
+ escapedQuoteChar = "'\\''";
+ cryptedPassword = "'*****'";
+ }
+
+ if ( afterPassword.startsWith( quoteChar ) )
+ {
+ pos = 1;
+ while ( afterPassword.indexOf( escapedQuoteChar, pos ) != -1 )
+ {
+ pos = afterPassword.indexOf( escapedQuoteChar, pos ) + escapedQuoteChar.length();
+ }
+ afterPassword = afterPassword.substring ( afterPassword.indexOf( quoteChar, pos )
+ + quoteChar.length() );
+ }
+ else
+ {
+ afterPassword = afterPassword.substring( afterPassword.indexOf( ' ' ) );
+ }
+
+ /*if ( Os.isFamily( Os.FAMILY_WINDOWS ) )
+ {
+
// FIXME Plexus Utils does not escape double qoutes in password
if ( afterPassword.startsWith( "\"" ) )
{
@@ -261,7 +292,7 @@ public final class SvnCommandLineUtils
{
afterPassword = afterPassword.substring( afterPassword.indexOf( ' ' ) );
}
- }
+ }*/
clString = beforePassword + cryptedPassword + afterPassword;
--
To stop receiving notification emails like this one, please contact
michaelo@apache.org.