Fix 'path cannot exist in repository' during diff for in-memory repository #6683
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.
Fixes obscure bug caused by change shown below in 54a22f5.
For an in-memory repository without an index setup, nor any directory on-disk, git_repository_index_weakptr can now fail with a not found error returned by repository_index_path, as a consequence of this, attr_setup returns the not found error in this scenario, which then results in an error when attempting to lookup the driver for comparing a file during a diff.
Elsewhere, the not found errors are ignored within attr_setup directly, or indirectly by callers of that, but error is escaping via the diff driver lookup, hence fix added to ignore it directly within attr_setup.