-
Notifications
You must be signed in to change notification settings - Fork 60
Add patch to fix typesupport bug in rmw_cyclonedds. #2
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
Conversation
mvukov
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is great! Thank you so much 💯 Looks like you knew where to look for a problem. And I was unlucky a bit to start the journey with a problematic DDS-rmw binding :) Tested this and it works as expected.
I have some minor comments, otherwise LGTM!
Please rename repositories/patches/BUILD to repositories/patches/BUILD.bazel for consistency with the rest of the repo.
repositories/repositories.bzl
Outdated
| patches=["@com_github_mvukov_rules_ros2//repositories/patches:rmw_cyclonedds-fix-typesupport-conditions-bug.patch"], | ||
| urls = ["https://github.com/ros2/rmw_cyclonedds/archive/0.7.6.tar.gz"], | ||
| ) | ||
| ) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please add a new line at the end of the file.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed.
|
@eboasson FYI. |
Ouch that hurts! 😉 I just grepped the sources and this pattern is used by all the (DDS-based) RMW implementations, so this fix might be a bit bigger than originally thought. Anyway, would you be willing to open a PR to https://github.com/ros2/rmw_cyclonedds? I'm a little bit surprised it is needed (though I do have some idea why) and I'd like the input from others who have been around for a long time and might know the reason why a pointer comparison was used. If they also approve, it would only be fair that your commit goes into the main repository. |
mvukov
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
|
@eboasson Thanks for prompt reply. Yeah, it totally makes sense to have this fix in rmw_cyclonedds repo. I can do it when I find some spare cycles, or @EvanLiUAV can do that -- he found the bug and made a fix here. Just for my understanding: is usage of |
I will add a pull request to rmw_cyclonedds |
What I see is that the Cyclone, Connext and FastRTPS code all contain a |
As we discuss in #1 ,the problem is solved
Fix this bug by modified rmw_cyclonedds package. the patch is as below based on foxy branch:
The problem is solved when the conditions are correctly determined.
talker
listener
rqt
