[ https://issues.apache.org/jira/browse/HADOOP-5700?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12714546#action_12714546 ]
Tsz Wo (Nicholas), SZE commented on HADOOP-5700: ------------------------------------------------ Here is my suggested fix: {code} static byte[][] getPathComponents(String path) { - return getPathComponents(getPathNames(path)); + final String[] strings = getPathNames(path); + if (strings == null) { + throw new IllegalArgumentException(path == null? "path == null" + : "Must pass an absolute path to getPathComponents, path=" + path); + } + return getPathComponents(strings); } {code} > INode.getPathComponents throws NPE when given a non-absolute path > ----------------------------------------------------------------- > > Key: HADOOP-5700 > URL: https://issues.apache.org/jira/browse/HADOOP-5700 > Project: Hadoop Core > Issue Type: Bug > Components: dfs > Reporter: Todd Lipcon > Assignee: Todd Lipcon > Priority: Minor > Fix For: 0.21.0 > > Attachments: HADOOP-5700.txt > > > If you pass a path that doesn't start with '/' to INode.getPathComponents, it > throws a NullPointerException. Instead it should throw > IllegalArgumentException to make it clear that absolute paths are required in > this code. > The attached patch fixes this, clarifies, the javadoc, and adds a test case. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.