Details
-
Bug
-
Status: Closed
-
Minor
-
Resolution: Fixed
-
1.0-beta-3
-
None
Description
1st bug :
The system property -Dmaven.scm.cvs.use_compression=false doesn't work if getSettings() method of CvsUtil class doesn't find the cvs-settings.xml file.
In this case, this method return a new Settings() for which compressionLevel=3 (constructor of Settings class).
In method getBaseCommand() of CvsCommandUtils class (org.apache.maven.scm.provider.cvslib.command), since settings.getCompressionLevel() = 3, if condition is true and then it adds -z3 to CommandLine cl.
2nd bug :
If you set <compressionLevel>0</compressionLevel> in cvs-settings.xml without setting system property -Dmaven.scm.cvs.use_compression=false, -z3 cvs compression is used.
In method getBaseCommand(), since settings.getCompressionLevel() > 0, if condition is false and then we go in else if condition (!System.getProperty( "maven.scm.cvs.use_compression", "true" ).equals( "false" )) which happens to be true so it adds -z3 to CommandLine cl.
Patch proposed :
Replace in CvsCommandUtils getBaseCommand() method :
---------------------
if ( settings.getCompressionLevel() > 0 )
else if ( !System.getProperty( "maven.scm.cvs.use_compression", "true" ).equals( "false" ) )
{ cl.createArgument().setValue( "-z3" ); }---------------------
with :
---------------------
if (settings.getCompressionLevel() > 0 && System.getProperty("maven.scm.cvs.use_compression", "true").equals("true"))
cl.createArgument().setValue("-z" + settings.getCompressionLevel());
--------------------
Tibo