BUGFIX: private tool used by public tool thinks it is public...
isPublic
checks whether the job options name for a tool starts with ToolSvc.
-- but if a tool is a private tool, with a public parent, then the job options name is eg. ToolSvc.PublicParent.PrivateChild
-- but PrivateChild
is not a public tool. As a result, it is impossible to configure a public tool which contains a ToolHandleArray
as the copy made with copyChildAndSetParent
will turn the input 'private' tool into an erroneous labeled 'public' one due to prefixing it with the parent name (which starts with ToolSvc.
), which then causes an exception during the subsequent attempt of appending this 'public' copy to a private handle array.
This MR changes the check from 'starts with' ToolSvc' into: is the name up to the last
.equal to
ToolSvc`.
Edited by Gerhard Raven