Fix edge case in path.relative
.
#3952
Merged
+18
−3
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.
Close: #3924
What does this PR do?
path.relative("/webpack-hot-middleware", "/webpack/buildin/module.js")
should return../webpack/buildin/module.js
Some explanations.
Assuming the input is as follows:
input[0]
=>/webpack-hot-middleware
input[1]
=>/webpack/buildin/module.js
bun/src/resolver/resolve_path.zig
Lines 198 to 207 in 928816b
The longest common substring is
/webpack
, So the index is8
(point to-
or/
).But here
bun/src/resolver/resolve_path.zig
Lines 297 to 303 in 928816b
we will get
/webpack/
here, a wrong directory.How did you verify your code works?
I wrote automated tests