Skip to content
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

Fix: FileSystemEntry.Attributes property is not correct on Unix #52235

Merged
merged 17 commits into from
May 8, 2021

Commits on May 4, 2021

  1. Configuration menu
    Copy the full SHA
    739bb27 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3175324 View commit details
    Browse the repository at this point in the history
  3. Remove the _initialAttributes field from FileStatus. Directly call _s…

    …tatus.GetAttributes from FileSYstemEntry.Attributes since the disk hit is necessary anyway.
    carlossanlop authored and carlossanlop committed May 4, 2021
    Configuration menu
    Copy the full SHA
    8c23640 View commit details
    Browse the repository at this point in the history
  4. Address simplication and nullcheck suggestions

    carlossanlop authored and carlossanlop committed May 4, 2021
    Configuration menu
    Copy the full SHA
    6ff6dcc View commit details
    Browse the repository at this point in the history

Commits on May 5, 2021

  1. Defering some more file checking actions to FileStatus. Addressing ac…

    …cessibility of methods/properties. Addressing suggestions.
    carlossanlop authored and carlossanlop committed May 5, 2021
    Configuration menu
    Copy the full SHA
    2423af0 View commit details
    Browse the repository at this point in the history

Commits on May 7, 2021

  1. Address feedback: Remove unnecessary asserts but document why. Remove…

    … struct initialization. Simplify the order in which Initialize checks for unknown and symlink and add a comment.
    carlossanlop authored and carlossanlop committed May 7, 2021
    Configuration menu
    Copy the full SHA
    7de7c4a View commit details
    Browse the repository at this point in the history
  2. Cache egid and euid, and refresh should reset them

    carlossanlop authored and carlossanlop committed May 7, 2021
    Configuration menu
    Copy the full SHA
    52a7b69 View commit details
    Browse the repository at this point in the history
  3. Check IsNameHidden before ensuring cache initialized and checking Has…

    …HiddenFlag.
    carlossanlop authored and carlossanlop committed May 7, 2021
    Configuration menu
    Copy the full SHA
    7d9dac0 View commit details
    Browse the repository at this point in the history
  4. The ifs inside FileSystemEntry.Initialize has two mutually exclusive …

    …conditions: symlink and unknown, so use else if.
    carlossanlop authored and carlossanlop committed May 7, 2021
    Configuration menu
    Copy the full SHA
    e2a05d8 View commit details
    Browse the repository at this point in the history
  5. Use entry.IsSymbolicLink directly inside Initialize.

    carlossanlop authored and carlossanlop committed May 7, 2021
    Configuration menu
    Copy the full SHA
    c7d83ed View commit details
    Browse the repository at this point in the history
  6. Remove extra symlink check in FileSystemEnumerator.MoveNext, not need…

    …ed and could cause unnecessary disk hit.
    carlossanlop authored and carlossanlop committed May 7, 2021
    Configuration menu
    Copy the full SHA
    3b69e81 View commit details
    Browse the repository at this point in the history
  7. Remove unused cache checks.

    carlossanlop authored and carlossanlop committed May 7, 2021
    Configuration menu
    Copy the full SHA
    3105cb8 View commit details
    Browse the repository at this point in the history
  8. Use HasHiddenFlag as expression body

    carlossanlop authored and carlossanlop committed May 7, 2021
    Configuration menu
    Copy the full SHA
    c40386c View commit details
    Browse the repository at this point in the history
  9. No need to soft retrieve hidden and read-only in FileSystemEntry.Init…

    …ialize if in AttributesToSkip we are going to retrieve it anyway with a disk hit. Only in the case of DT_UNKNOWN, we will pre-retrieve the file cache, but we only need it when ShouldSkip is checked, and in that case, we won't have a disk hit.
    carlossanlop authored and carlossanlop committed May 7, 2021
    Configuration menu
    Copy the full SHA
    1d96271 View commit details
    Browse the repository at this point in the history
  10. Make FileStatus.Initialize inlined in the only place where its called.

    carlossanlop authored and carlossanlop committed May 7, 2021
    Configuration menu
    Copy the full SHA
    7f6cee4 View commit details
    Browse the repository at this point in the history

Commits on May 8, 2021

  1. EnsureCacheInitialized bring back order of conditions

    carlossanlop authored and carlossanlop committed May 8, 2021
    Configuration menu
    Copy the full SHA
    c4c3682 View commit details
    Browse the repository at this point in the history
  2. Syntax sugar for nullable egid and euid lazy retrieval

    carlossanlop authored and carlossanlop committed May 8, 2021
    Configuration menu
    Copy the full SHA
    817ca95 View commit details
    Browse the repository at this point in the history