1
0
mirror of https://github.com/doitsujin/dxvk.git synced 2025-02-20 19:54:19 +01:00

[d3d9] Re-look up wnd proc iterator

Avoids a potential issue where this could change address during this time.
This commit is contained in:
Joshua Ashton 2020-04-06 19:40:25 +01:00
parent a80eea926a
commit 47ddd8466a

View File

@ -529,12 +529,11 @@ namespace dxvk {
if (changeFullscreen)
this->EnterFullscreenMode(pPresentParams, pFullscreenDisplayMode);
std::unique_lock<std::recursive_mutex> lock(windowProcMapMutex);
auto it = windowProcMap.find(m_window);
it->second.filter = true;
lock.unlock();
{
std::lock_guard<std::recursive_mutex> lock(windowProcMapMutex);
auto it = windowProcMap.find(m_window);
it->second.filter = true;
}
if (!changeFullscreen)
ChangeDisplayMode(pPresentParams, pFullscreenDisplayMode);
@ -547,9 +546,11 @@ namespace dxvk {
rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top,
SWP_FRAMECHANGED | SWP_SHOWWINDOW | SWP_NOACTIVATE);
lock.lock();
it->second.filter = false;
{
std::lock_guard<std::recursive_mutex> lock(windowProcMapMutex);
auto it = windowProcMap.find(m_window);
it->second.filter = false;
}
}
m_presentParams = *pPresentParams;