From a08145b0c2b321563b9db7aea03efc93a67f2ac2 Mon Sep 17 00:00:00 2001 From: RadWolfie Date: Sun, 22 Nov 2020 01:40:42 -0600 Subject: [PATCH 1/2] loader: fix input for what system need to be free up reserve address ranges --- src/common/ReserveAddressRanges.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/common/ReserveAddressRanges.cpp b/src/common/ReserveAddressRanges.cpp index 10251da32..a4639522b 100644 --- a/src/common/ReserveAddressRanges.cpp +++ b/src/common/ReserveAddressRanges.cpp @@ -302,9 +302,9 @@ bool AttemptReserveAddressRanges(unsigned int* p_reserved_systems, blocks_reserv // Some ranges are allowed to fail reserving if (!IsOptionalAddressRange(i)) { // If not, then let's free them and downgrade host's limitation. + clear_systems = AddressRangeGetSystemFlags(i); iLast = i; i = -1; // Reset index back to zero after for statement's increment. - clear_systems = AddressRangeGetSystemFlags(i); continue; } } From e424d052522822eeffbb7f2bb2a876c36f8ee174 Mon Sep 17 00:00:00 2001 From: RadWolfie Date: Sun, 22 Nov 2020 01:42:19 -0600 Subject: [PATCH 2/2] fix couple variable types usage --- src/common/AddressRanges.cpp | 6 +++--- src/common/AddressRanges.h | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/common/AddressRanges.cpp b/src/common/AddressRanges.cpp index 9ff98bfe1..7a5a757db 100644 --- a/src/common/AddressRanges.cpp +++ b/src/common/AddressRanges.cpp @@ -72,17 +72,17 @@ const _XboxAddressRanges XboxAddressRanges[] = { const size_t XboxAddressRanges_size = ARRAY_SIZE(XboxAddressRanges); -bool AddressRangeMatchesFlags(const int index, const unsigned int flags) +bool AddressRangeMatchesFlags(const size_t index, const unsigned int flags) { return XboxAddressRanges[index].RangeFlags & flags; } -bool IsOptionalAddressRange(const int index) +bool IsOptionalAddressRange(const size_t index) { return AddressRangeMatchesFlags(index, MAY_FAIL); } -int AddressRangeGetSystemFlags(const int index) +unsigned int AddressRangeGetSystemFlags(const size_t index) { return XboxAddressRanges[index].RangeFlags & SYSTEM_ALL; } diff --git a/src/common/AddressRanges.h b/src/common/AddressRanges.h index 3e2dcdcdd..6bac680bc 100644 --- a/src/common/AddressRanges.h +++ b/src/common/AddressRanges.h @@ -196,8 +196,8 @@ extern const struct _XboxAddressRanges { extern const size_t XboxAddressRanges_size; -extern bool AddressRangeMatchesFlags(const int index, const unsigned int flags); -extern bool IsOptionalAddressRange(const int index); -extern int AddressRangeGetSystemFlags(const int index); +extern bool AddressRangeMatchesFlags(const size_t index, const unsigned int flags); +extern bool IsOptionalAddressRange(const size_t index); +extern unsigned int AddressRangeGetSystemFlags(const size_t index); extern bool VerifyWow64();