[
https://issues.apache.org/jira/browse/CURATOR-395?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15971852#comment-15971852
]
ASF GitHub Bot commented on CURATOR-395:
----------------------------------------
Github user cammckenzie commented on the issue:
https://github.com/apache/curator/pull/213
Ah, I see now. It's the Preconditions.checkState call that causes the
issue. I thought that we could just hold a reference to the builder and then
call forPath() on it when required. But that checkState call will fail if the
client is not started.
So, the PR looks OK to me. Merge away.
> Potential null dereference in PersistentNode
> --------------------------------------------
>
> Key: CURATOR-395
> URL: https://issues.apache.org/jira/browse/CURATOR-395
> Project: Apache Curator
> Issue Type: Bug
> Reporter: Ted Yu
> Assignee: Jordan Zimmerman
> Priority: Minor
>
> {code}
> if ( localCreateMethod == null )
> {
> CreateModable<ACLBackgroundPathAndBytesable<String>>
> tempCreateMethod = useProtection ?
> client.create().creatingParentContainersIfNeeded().withProtection() :
> client.create().creatingParentContainersIfNeeded();
> if ( createMethod.compareAndSet(null, tempCreateMethod) )
> {
> localCreateMethod = tempCreateMethod;
> }
> }
> localCreateMethod.withMode(getCreateMode(existingPath !=
> null)).inBackground(backgroundCallback).forPath(createPath, data.get());
> {code}
> Before calling withMode(), localCreateMethod should be checked against null.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)