windows: use ENV & SHGetFolderPathW for APPDATA/LOCALAPPDATA #11
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.
It was pointed out here that etcetera simply concats the default location for Roaming & Local AppData instead of consulting the system.
Based on it, I've changed the behavior to the following:
APPDATA
&LOCALAPPDATA
environment variables are defined & use them.This is what
Go
does.SHGetFolderPathW
API (similar to how it is used in thehome
crate) to get these locations.This is what the
dirs
crate does.This is what we do right now
This does add a new dependency, but it is already used by the
home
crate so it doesn't actually increase the crate size.