Albert So created JENKINS-13599:
-----------------------------------

             Summary: DoxygenDirectoryParser#isDirectoryAbsolute() can get 
confused and cause the doxygen OUTPUT_DIR not to be found
                 Key: JENKINS-13599
                 URL: https://issues.jenkins-ci.org/browse/JENKINS-13599
             Project: Jenkins
          Issue Type: Bug
          Components: doxygen
    Affects Versions: current
            Reporter: Albert So
            Assignee: gbois


We have a doxygen.conf file where OUTPUT_DIRECTORY = doc. The doxygen html 
files were generated properly under ${workspace}/doc/html however the plugin 
kept on saying it couldn't find the directory.

After tracing in to the code, I think I see the problem. 
DoxygenDirectoryParser#isDirectoryAbsolute() checks to see if the passed in 
path is absolute by seeing if the path's parent exists.

If we pass in "doc" you would expext isDirectoryAbsolute() to return false. 
However, in our environment, ${user.dir}/doc actually does exist. 

>From http://docs.oracle.com/javase/6/docs/api/java/io/File.html, "By default 
>the classes in the java.io package always resolve relative pathnames against 
>the current user directory. This directory is named by the system property 
>user.dir, and is typically the directory in which the Java virtual machine was 
>invoked."

For Unix environments, I'm thinking we can just check to see if the path starts 
with a "/" to see if a directory is absolute. However, for Windows 
environments, the check will have to include checking for drive letter names 
and UNC paths.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.jenkins-ci.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to