[release/v7.4.16] Fix checks for local user config file paths by adityapatwardhan · Pull Request #27454 · PowerShell/PowerShell
Backport of #26269 to release/v7.4.16
Triggered by @adityapatwardhan on behalf of @SeeminglyScience
Original CL Label: CL-Engine
/cc @PowerShell/powershell-maintainers
Impact
REQUIRED: Choose either Tooling Impact or Customer Impact (or both). At least one checkbox must be selected.
Tooling Impact
- Required tooling change
- Optional tooling change (include reasoning)
Customer Impact
- Customer reported
- Found internally
Fixes an issue where configuration file loading could fail when the Documents directory location was not yet created. The fix ensures PowerShell can locate user config files even when their parent directories don't exist yet.
Regression
REQUIRED: Check exactly one box.
- Yes
- No
This is not a regression.
Testing
Original PR testing included verification that SYSTEM's default config path is properly resolved regardless of whether the Documents directory exists. Uses DoNotVerify option with Environment.GetFolderPath to ensure configured location is returned.
Risk
REQUIRED: Check exactly one box.
- High
- Medium
- Low
This is a targeted fix for config path resolution that improves robustness by ensuring paths are returned regardless of directory existence. The changes are localized to config file path validation logic with no impact to core functionality.