- [Core] Config saving now uses xe::StringBuffer instead of
std::ostringstream.
- [Core] Config saving now supports cvar descriptions with newlines.
- [Core] Config value alignment now 50 (from 40).
- [Core] Config value alignment now takes UTF8 into account instead
of raw byte length.
- Clean up user index handling in XamUserGetXUID,
XamUserGetSigninState, XamUserReadProfileSettings,
XamUserWriteProfileSettings, XamUserCheckPrivilege,
XamUserContentRestrictionGetFlags, XamUserAreUsersFriends.
A user index of 0xFF does not mean anything special and is outright
invalid.
- Move XamUserReadProfileSettings code to new
xeXamUserReadProfileSettingsEx.
- Implement XamUserReadProfileSettings/XamUserReadProfileSettingsEx
which now call xeXamUserReadProfileSettingsEx.
- Reorganized xeXamUserReadProfileSettingsEx so that the needed buffer
size is checked before user index is validated, so that calls to
determine necessary buffer size return correctly instead of an error
about invalid user index.
- Stub XamUserIsOnlineEnabled.
Now properly takes a global lock when populating guest_trampoline_map_
as opposed to taking and immediately releasing it
Also removes a redundant find() from guest_trampoline_map_
so map is not searched twice if the function has already been generated.
Remove custom platform implementation of `DeleteFile` and replace single
use with `std::filesystem::remove` after a negative
`std::filesystem::is_directory` check.
Remove custom platform implementation of `DeleteFolder` and replace two
uses with `std::filesystem::remove_all` which removes a file or
directory with all its contents.
C++17ification!
- Filesystem interaction now uses std::filesystem::path.
- Usage of const char*, std::string have been changed to
std::string_view where appropriate.
- Usage of printf-style functions changed to use fmt.