Skip to content

Conversation

@perry-reframe
Copy link
Contributor

Allows new RosAction-/RosTopic-/RosServiceClients to assign new ClientInstances into the Registry in the event that the old ClientInstance went out of scope.

For example, if a BehaviorTree with three RosServiceNodes to /foo is created, only one ServiceClient is constructed and is then shared between all clients. However, if that tree goes out of scope and destroys its service client, and a new instance is constructed, all three RosServiceNodes construct their own ServiceClient for a total of three service clients. This is because the insert function does not overwrite the expired weakptrs left in the registry.

@facontidavide facontidavide merged commit 63b2bf4 into BehaviorTree:humble Oct 30, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants