[PATCH] ntdll: Only set owned bits in RTL_BITMAP
janisozaur at gmail.com
janisozaur at gmail.com
Sat Jun 30 14:11:38 CDT 2018
From: Michał Janiszewski <janisozaur at gmail.com>
Signed-off-by: Michał Janiszewski <janisozaur at gmail.com>
---
dlls/ntdll/rtlbitmap.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/dlls/ntdll/rtlbitmap.c b/dlls/ntdll/rtlbitmap.c
index 318f6fcbd4..c3e9385ec0 100644
--- a/dlls/ntdll/rtlbitmap.c
+++ b/dlls/ntdll/rtlbitmap.c
@@ -157,7 +157,8 @@ VOID WINAPI RtlSetBits(PRTL_BITMAP lpBits, ULONG ulStart, ULONG ulCount)
USHORT initialWord = NTDLL_maskBits[ulCount] << (ulStart & 7);
*lpOut++ |= (initialWord & 0xff);
- *lpOut |= (initialWord >> 8);
+ if (lpOut < ((BYTE *)lpBits->Buffer) + (lpBits->SizeOfBitMap / 8))
+ *lpOut |= (initialWord >> 8);
return;
}
}
@@ -218,7 +219,8 @@ VOID WINAPI RtlClearBits(PRTL_BITMAP lpBits, ULONG ulStart, ULONG ulCount)
USHORT initialWord = ~(NTDLL_maskBits[ulCount] << (ulStart & 7));
*lpOut++ &= (initialWord & 0xff);
- *lpOut &= (initialWord >> 8);
+ if (lpOut < ((BYTE *)lpBits->Buffer) + (lpBits->SizeOfBitMap / 8))
+ *lpOut &= (initialWord >> 8);
return;
}
}
--
2.17.1
More information about the wine-devel
mailing list