in src/com/intellij/vssSupport/VssUtil.java [64:98]
public static String getLocalPath( String vssPath, Project project )
{
VcsDirectoryMapping nearestItem = getNearestMapItemForVssPath( vssPath, project );
if( nearestItem == null )
return null;
String vssProject = ((VssRootSettings)nearestItem.getRootSettings()).getVssProject();
String pathDifference = vssPath.substring( vssProject.length() );
String baseDir = nearestItem.getDirectory();
if( StringUtil.isEmpty( baseDir ) )
{
baseDir = project.getBaseDir().getPath();
}
StringBuffer sb = new StringBuffer( baseDir );
if( !StringUtil.endsWithChar( baseDir, '/'))
sb.append("/");
if( StringUtil.startsWithChar( pathDifference, '/') )
{
if( pathDifference.length() > 1 )
sb.append( pathDifference.substring( 1 ) );
}
else
{
sb.append( pathDifference );
}
String localPath = sb.toString();
if (!StringUtil.endsWithChar(localPath, '/')) {
return localPath.replace('/', File.separatorChar);
}
else {
return localPath.substring(0, localPath.length() - 1).replace('/', File.separatorChar);
}
}