1
0
mirror of https://github.com/narzoul/DDrawCompat synced 2024-12-30 08:55:36 +01:00

Readded buffer overflow fix for Diablo 1

See issue #3.
This commit is contained in:
narzoul 2019-08-01 21:55:56 +02:00
parent f9f4b6fb00
commit b747448330
2 changed files with 4 additions and 2 deletions

View File

@ -9,4 +9,5 @@ namespace Config
const int delayedFlipModeTimeout = 200;
const int maxPaletteUpdatesPerMs = 5;
const int minExpectedFlipsPerSec = 5;
const int virtualScreenBufferExtraRows = 2;
}

View File

@ -1,5 +1,6 @@
#include <set>
#include "Config/Config.h"
#include "Common/ScopedCriticalSection.h"
#include "D3dDdi/Device.h"
#include "D3dDdi/ScopedCriticalSection.h"
@ -229,8 +230,8 @@ namespace Gdi
CloseHandle(g_surfaceFileMapping);
}
g_surfaceFileMapping = CreateFileMapping(
INVALID_HANDLE_VALUE, nullptr, PAGE_READWRITE, 0, g_pitch * g_height, nullptr);
g_surfaceFileMapping = CreateFileMapping(INVALID_HANDLE_VALUE, nullptr, PAGE_READWRITE, 0,
g_pitch * (g_height + Config::virtualScreenBufferExtraRows), nullptr);
g_surfaceView = MapViewOfFile(g_surfaceFileMapping, FILE_MAP_WRITE, 0, 0, 0);
for (HDC dc : g_dcs)