[PATCH] dplayx: Prevent out-of-bounds access to lpMemArea.

Huw Davies huw at codeweavers.com
Wed May 30 07:01:56 CDT 2018


Based on a patch by Andrey Gusev.

Signed-off-by: Huw Davies <huw at codeweavers.com>
---
 dlls/dplayx/dplayx_global.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/dlls/dplayx/dplayx_global.c b/dlls/dplayx/dplayx_global.c
index 14c53a0c8d..bc087c8b33 100644
--- a/dlls/dplayx/dplayx_global.c
+++ b/dlls/dplayx/dplayx_global.c
@@ -120,9 +120,9 @@ static LPVOID DPLAYX_PrivHeapAlloc( DWORD flags, DWORD size )
 
   /* Find blank area */
   uBlockUsed = 0;
-  while( lpMemArea[ uBlockUsed ].used && uBlockUsed <= dwMaxBlock ) { uBlockUsed++; }
+  while( uBlockUsed < dwMaxBlock && lpMemArea[ uBlockUsed ].used ) { uBlockUsed++; }
 
-  if( uBlockUsed <= dwMaxBlock )
+  if( uBlockUsed < dwMaxBlock )
   {
     /* Set the area used */
     lpMemArea[ uBlockUsed ].used = TRUE;
-- 
2.16.2




More information about the wine-devel mailing list