mirror of
https://github.com/doitsujin/dxvk.git
synced 2025-01-18 11:52:12 +01:00
[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:
parent
dc67cf730e
commit
757bb2bad7
@ -170,6 +170,7 @@ namespace dxvk {
|
|||||||
UINT GetDataFlags) {
|
UINT GetDataFlags) {
|
||||||
if (m_desc.Query == D3D11_QUERY_EVENT) {
|
if (m_desc.Query == D3D11_QUERY_EVENT) {
|
||||||
const bool signaled = m_event->getStatus() == DxvkEventStatus::Signaled;
|
const bool signaled = m_event->getStatus() == DxvkEventStatus::Signaled;
|
||||||
|
|
||||||
if (pData != nullptr)
|
if (pData != nullptr)
|
||||||
*static_cast<BOOL*>(pData) = signaled;
|
*static_cast<BOOL*>(pData) = signaled;
|
||||||
|
|
||||||
|
@ -50,7 +50,7 @@ namespace dxvk {
|
|||||||
|
|
||||||
std::mutex m_mutex;
|
std::mutex m_mutex;
|
||||||
|
|
||||||
DxvkEventStatus m_status = DxvkEventStatus::Reset;
|
DxvkEventStatus m_status = DxvkEventStatus::Signaled;
|
||||||
uint32_t m_revision = 0;
|
uint32_t m_revision = 0;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
@ -190,7 +190,7 @@ namespace dxvk {
|
|||||||
|
|
||||||
std::mutex m_mutex;
|
std::mutex m_mutex;
|
||||||
|
|
||||||
DxvkQueryStatus m_status = DxvkQueryStatus::Reset;
|
DxvkQueryStatus m_status = DxvkQueryStatus::Available;
|
||||||
DxvkQueryData m_data = {};
|
DxvkQueryData m_data = {};
|
||||||
DxvkQueryHandle m_handle;
|
DxvkQueryHandle m_handle;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user