I'm pretty sure that CVSPlugin 1.6 didn't have this problem, but with 2.4 my URLs for ViewCVS contain the path portion of my CVSROOT.
For example:
Example base URL for ViewCVS (FreeBSD-CVSweb): http://cvs.somewhere.net//cgi-bin/cvsweb/
CVSROOT=username@host:/var/lib/cvs
Module being checked out: company/product/src
Resulting URL:
http://cvs.somewhere.net/cgi-bin/cvsweb/var/lib/cvs/company/product/src/Common/libs/widget/Widget.cc
Previously, the URL would have been:
http://cvs.somewhere.net/cgi-bin/cvsweb/company/product/src/Common/libs/widget/Widget.cc
Code changed in jenkins
User: mc1arke
Path:
src/main/java/hudson/scm/browsers/ViewCVS.java
http://jenkins-ci.org/commit/cvs-plugin/ba40382bf959c787be5f0eb9d276ba08c2977153
Log:
[FIXED JENKINS-14343] Using File name rather than full path in ViewCvs line
Compare: https://github.com/jenkinsci/cvs-plugin/compare/2a8eaa1b82d2...ba40382bf959