-
Notifications
You must be signed in to change notification settings - Fork 791
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Double Free for DynamicData for Sequences of Nested Structs (with minimal example) #2970
Comments
This bug is still happening, are there any updates? |
If it helps, I found that commenting out this line fixes the issue. But I don't know what the fallout of removing This issue happens when dynamic datas are copied with |
There are several known issues related with Dynamic Types in Fast DDS. Thus, a refactor is being undertaken in order to fix the Dynamic Types implementation. It is expected to be released with Fast DDS v2.11.0 scheduled for June 2023. |
The Dynamic Types refactor has been integrated in Fast DDS v3.0.0 which will be released soon. This issue may be solved in the new version of Fast DDS, so I will close this issue for now. If the issue persists, feel free to reopen it. |
Is there an already existing issue for this?
Expected behavior
Current behavior
Specifically, the following error is printed per sequence/array element created.
Steps to reproduce
I've prepared a minimal example:
methylDragon/fastdds-pr-minimal-examples
Once built, run:
The relevant code can be found here.
Fast DDS version/commit
FastDDS 2.8.x: 78473a0
The examples workspace is using that specific SHA in the submodule, for convenience.
Platform/Architecture
Other. Please specify in Additional context section.
Transport layer
Default configuration, UDPv4 & SHM
Additional context
This is on 22.04, but I don't think the platform matters in this case.
The error is being emitted from DynamicDataFactory's destructor call.
What I suspect is happening is, as each dynamic data is added to the sequence/array, the data gets registered once to the factory on creation. But on destruction, the factory destroys the instance, but the sequence/array destruction triggers a second destruction.
This causes the double free. (I think)
XML configuration file
No response
Relevant log output
The text was updated successfully, but these errors were encountered: