[dxvk] Mark events and queries as available by default

Fixes a lockup in World of Warships, which waits for an event query
to be signaled without actually ever calling End() for that query.
This commit is contained in:
Philip Rebohle 2018-02-27 10:14:53 +01:00
parent dc67cf730e
commit 757bb2bad7
No known key found for this signature in database
GPG Key ID: C8CC613427A31C99
3 changed files with 3 additions and 2 deletions

View File

@ -170,6 +170,7 @@ namespace dxvk {
UINT GetDataFlags) {
if (m_desc.Query == D3D11_QUERY_EVENT) {
const bool signaled = m_event->getStatus() == DxvkEventStatus::Signaled;
if (pData != nullptr)
*static_cast<BOOL*>(pData) = signaled;

View File

@ -50,7 +50,7 @@ namespace dxvk {
std::mutex m_mutex;
DxvkEventStatus m_status = DxvkEventStatus::Reset;
DxvkEventStatus m_status = DxvkEventStatus::Signaled;
uint32_t m_revision = 0;
};

View File

@ -190,7 +190,7 @@ namespace dxvk {
std::mutex m_mutex;
DxvkQueryStatus m_status = DxvkQueryStatus::Reset;
DxvkQueryStatus m_status = DxvkQueryStatus::Available;
DxvkQueryData m_data = {};
DxvkQueryHandle m_handle;