Repository navigation
UnifiedTree.isRecursiveLink() links check may silently ignore some links - #2221
Merged
Merged
Conversation
Contributor
Test Results 1 947 files ± 0 1 947 suites ±0 1h 27m 59s ⏱️ + 7m 26s Results for commit dd183c5. ± Comparison against base commit f394888. This pull request removes 11 and adds 24 tests. Note that renamed tests count towards both.♻️ This comment has been updated with latest results. |
iloveeclipse
force-pushed
the
issue_2220
branch
from
November 5, 2025 13:38
029b94c to
043d728
Compare
iloveeclipse
marked this pull request as ready for review
November 5, 2025 13:38
Member
Author
|
Two problems:
|
iloveeclipse
force-pushed
the
issue_2220
branch
from
November 5, 2025 14:27
043d728 to
d8de9e2
Compare
- Main fix: the child path created from the link should use `realParentPath` to avoid silent `NoSuchFileException`'s if the constructed link does not match actual (fully resolved) file system state of the local file we are checking. Original code run into (silent) exceptions and because of that was not able to detect some of possible recursive links. - Removed pattern checking for "../X" because backwards links can also be created with absolute paths, as seen in `Bug_185247_recursiveLinks.test5_linkParentDirectoyTwiceWithAbsolutePath(boolean)` - Added regression test `SymlinkResourceTest.testGithubBug2220`. - Added `UnifiedTree` methods to set/read `disable_advanced_recursive_link_checks` flag in tests so we can test both variants of link checking code. - Updated existing tests to test both advanced / simple link checks (where possible): `SymlinkResourceTest`, `Bug_185247_recursiveLinks` & `Bug_185247_LinuxTests` - Improved `WorkspaceResetExtension` to properly report test names (it only reported `false` or `true` for parametrized tests). Fixes eclipse-platform#2220
iloveeclipse
force-pushed
the
issue_2220
branch
from
November 5, 2025 15:15
d8de9e2 to
dd183c5
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
UnifiedTree.isRecursiveLink() links check may silently ignore some links
realParentPathto avoid silentNoSuchFileException's if the constructed link does not match actual (fully resolved) file system state of the local file we are checking. Original code run into (silent) exceptions and because of that was not able to detect some of possible recursive links.Bug_185247_recursiveLinks.test5_linkParentDirectoyTwiceWithAbsolutePath(boolean)SymlinkResourceTest.testGithubBug2220.UnifiedTreemethods to set/readdisable_advanced_recursive_link_checksflag in tests so we can testboth variants of link checking code.
SymlinkResourceTest,Bug_185247_recursiveLinks&Bug_185247_LinuxTestsWorkspaceResetExtensionto properly report test names (it only reportedfalseortruefor parametrized tests).Fixes #2220