Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Correct index add directory/file conflict detection#6729

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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Merged
ethomson merged 2 commits intomainfromethomson/index_add
Feb 6, 2024

Conversation

ethomson
Copy link
Member

has_dir_name is used to check for directory/file collisions, and attempts to determine whether the index contains a file with a directory name that is a proper subset of the new index entry that we're trying to add.

To determine directory name, the function would walk the path string backwards to identify a/, stopping at the end of the string. However, the function assumed that the strings did not start with a/. If the paths contain only a single/ at the beginning of the string, then the function would continue the loop, erroneously, when they should have stopped at the first character.

Correct the order of the tests to terminate properly.

Thanks to the Amazon AWS Security team for finding and responsibly disclosing this.

Ensure that we can `git_index_add` a slash-prefixed path, followed byre-adding the same path. The original entry should be replaced by thenew entry.
`has_dir_name` is used to check for directory/file collisions,and attempts to determine whether the index contains a file witha directory name that is a proper subset of the new index entrythat we're trying to add.To determine directory name, the function would walk the path stringbackwards to identify a `/`, stopping at the end of the string. However,the function assumed that the strings did not start with a `/`. If thepaths contain only a single `/` at the beginning of the string, then thefunction would continue the loop, erroneously, when they should havestopped at the first character.Correct the order of the tests to terminate properly.Credit to Michael Rodler (@f0rki) and Amazon AWS Security.
@ethomson
Copy link
MemberAuthor

Note: this was included inv1.6.5 andv1.7.2.

Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment
Reviewers
No reviews
Assignees
No one assigned
Projects
None yet
Milestone
No milestone
Development

Successfully merging this pull request may close these issues.

1 participant
@ethomson

[8]ページ先頭

©2009-2025 Movatter.jp