-
Notifications
You must be signed in to change notification settings - Fork 10.3k
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
Prevent infinite loops for recursive containers like boost::filesystem::path #1186
Conversation
…em::path as parameter google#521: Add is_same type trait
…em::path as parameter google#521: Add is_same type trait and prevent infinite loops for recursive containers
Thanks for your pull request. It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA). 📝 Please visit https://cla.developers.google.com/ to sign. Once you've signed, please reply here (e.g.
|
I signed the CLA. |
CLAs look good, thanks! |
Please add tests so we have evidence that this in fact works as intended |
Can you give me a hint about the test guidelines in googletest? First: Where should these be added? Is it expected to add tests to both googletest and googlemock? Thanks. |
I looked into the existing googletest test directory and found that gtest-printers_test.cc is already the right test for this. I will add a corresponding test case to this pre-existing test file. |
I signed the CLA. |
Is there anything that I need to do to realize that the CI build will run again? |
Could someone please review the suggested patch? Thank you! |
Note that appVeyor build failed , could you please take a look what happened |
Yep, I'll fix it this evening. |
Note that the fixed had been applied and the previous build succeeded. I decided to update the branch yesterday (This IC is still in progress), but that seems to be an endless story, so I don't intend to apply further changes and instead await the review approval. |
Thank you for the updates. I fully support small PRs that are much easier to handle. For this PR, could you please add full test information as well as the test output before/after to demonstrate what we are fixing and how works now. Thank you |
I'm not sure that I understand your request, but the set of changes are intended to solve the problem described in issue #521. Does this clarify your question? |
Yes, 521 has information needed. |
The real-world test will require someone to validate that |
How about using Alexhuszagh's Jun 19 suggestion (<experimental/filesytem>) ? |
No, |
PR fixed the issue nlohmann/json#709 |
Thank you for detailed explanation. lgtm |
This pull request introduces an additional detection for recursively defined containers (such as
boost::filesystem::path
orstd::filesystem::path
) and prevents the possibility of an infinite loop within the output handler for containers.