-
Notifications
You must be signed in to change notification settings - Fork 287
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
Fix incorrect LCP construction in JointConstraint for multi-DOFs joints (#1596) #1597
Conversation
if (!mActive[i]) | ||
continue; |
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.
These two lines are the actual fix for #1596. Without these lines, this function attempted to access invalid indices of the arrays in lcp
.
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.
👍
Thanks for the incredibly quick fix and adding the test over. I would make one small adjustment to the test, since I tried reverting the two lines that fix the bug, and the test currently passes without the fix. I've widened the joint limits a bit in the following patch, which I think is an improvement because it makes the test fail on my machine without the fix, while it still passes with the fix:
|
Interesting, it was the opposite in my case. Narrowing the limits made the difference. I guess it's possible that the gravity I used (i.e., [1, 1, 0]) was different from the one in your test. Using [9.81, 9.81, 0] showed the same results as yours with the widen limits. |
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.
I left comments about two asserts, but I leave judgment about them in your hands
aside from that, everything looks great to me, so I will mark this as approved
I can re-review if you decide to make further changes
JointConstraint
for multi-DOFs joints (fixes Gazebo crashes when universal joints reach limits since 6.11.0 #1596)universal
joint type inSDFParser
Before creating a pull request
clang-format
Before merging a pull request
CHANGELOG.md