Merge branch 'pr-63'
This closes #63
diff --git a/maven-scm-providers/maven-scm-providers-cvs/maven-scm-provider-cvs-commons/src/main/java/org/apache/maven/scm/provider/cvslib/command/list/AbstractCvsListCommand.java b/maven-scm-providers/maven-scm-providers-cvs/maven-scm-provider-cvs-commons/src/main/java/org/apache/maven/scm/provider/cvslib/command/list/AbstractCvsListCommand.java
index ee98ff7..aa284b5 100644
--- a/maven-scm-providers/maven-scm-providers-cvs/maven-scm-provider-cvs-commons/src/main/java/org/apache/maven/scm/provider/cvslib/command/list/AbstractCvsListCommand.java
+++ b/maven-scm-providers/maven-scm-providers-cvs/maven-scm-provider-cvs-commons/src/main/java/org/apache/maven/scm/provider/cvslib/command/list/AbstractCvsListCommand.java
@@ -92,6 +92,16 @@
             cl.createArg().setValue( "-R" );
         }
 
+        String modulePref = repository.getModule();
+        if ( !StringUtils.isEmpty( modulePref ) )
+        {
+            modulePref += File.separatorChar;
+        }
+        else
+        {
+            modulePref = "";
+        }
+
         for ( Iterator<File> it = fileSet.getFileList().iterator(); it.hasNext(); )
         {
             File target = (File) it.next();
@@ -100,6 +110,7 @@
             {
                 path = path.substring( 1 );
             }
+            path = modulePref + path;
             cl.createArg().setValue( path );
         }
 
diff --git a/maven-scm-providers/maven-scm-providers-cvs/maven-scm-provider-cvsjava/src/main/java/org/apache/maven/scm/provider/cvslib/cvsjava/util/CvsConnection.java b/maven-scm-providers/maven-scm-providers-cvs/maven-scm-provider-cvsjava/src/main/java/org/apache/maven/scm/provider/cvslib/cvsjava/util/CvsConnection.java
index 241e63a..53323aa 100644
--- a/maven-scm-providers/maven-scm-providers-cvs/maven-scm-provider-cvsjava/src/main/java/org/apache/maven/scm/provider/cvslib/cvsjava/util/CvsConnection.java
+++ b/maven-scm-providers/maven-scm-providers-cvs/maven-scm-provider-cvsjava/src/main/java/org/apache/maven/scm/provider/cvslib/cvsjava/util/CvsConnection.java
@@ -399,11 +399,7 @@
     public static boolean processCommand( String[] args, String localPath, CVSListener listener, ScmLogger logger )
         throws Exception
     {
-        // Set up the CVSRoot. Note that it might still be null after this
-        // call if the user has decided to set it with the -d command line
-        // global option
         GlobalOptions globalOptions = new GlobalOptions();
-        globalOptions.setCVSRoot( getCVSRoot( localPath ) );
 
         // Set up any global options specified. These occur before the
         // name of the command to run
@@ -422,14 +418,21 @@
             return false;
         }
 
-        // if we don't have a CVS root by now, the user has messed up
+        // CVSRoot might still be null if the user has NOT decided to set
+        // it with the -d command line global option
         if ( globalOptions.getCVSRoot() == null )
         {
-            if ( logger.isErrorEnabled() )
+            String cvsRoot = getCVSRoot( localPath );
+            if ( cvsRoot == null )
             {
-                logger.error( "No CVS root is set. Check your <repository> information in the POM." );
+                // if we don't have a CVS root by now, the user has messed up
+                if ( logger.isErrorEnabled() )
+                {
+                    logger.error( "No CVS root is set. Check your <repository> information in the POM." );
+                }
+                return false;
             }
-            return false;
+            globalOptions.setCVSRoot( cvsRoot );
         }
 
         // parse the CVS root into its constituent parts
diff --git a/pom.xml b/pom.xml
index 8fb67ea..bb81d87 100644
--- a/pom.xml
+++ b/pom.xml
@@ -341,6 +341,7 @@
           <artifactId>apache-rat-plugin</artifactId>
           <configuration>
             <excludes combine.children="append">
+              <exclude>.checkstyle</exclude>
               <exclude>.gitignore</exclude>
               <exclude>README.txt</exclude>
               <exclude>*.sh</exclude>