diff options
author | Robin Kertels <robin.kertels@gmail.com> | 2023-09-18 20:49:25 +0300 |
---|---|---|
committer | Joshie <joshua@froggi.es> | 2023-09-19 23:25:12 +0300 |
commit | 494f7fd38df9b0ec6b1d3137a6528d2f31d55452 (patch) | |
tree | a3ae6408b9fd160ece8b32b645bd1bb87fb1105c | |
parent | 0632da19357fb3d846ea36ef07166eb93b09173a (diff) |
[d3d9] Only set initial NeedsUpload for D3DPOOL_MANAGED textures
-rw-r--r-- | src/d3d9/d3d9_common_texture.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/d3d9/d3d9_common_texture.cpp b/src/d3d9/d3d9_common_texture.cpp index 6aed7038..1f66a626 100644 --- a/src/d3d9/d3d9_common_texture.cpp +++ b/src/d3d9/d3d9_common_texture.cpp @@ -31,11 +31,12 @@ namespace dxvk { AddDirtyBox(nullptr, i); } - if (m_desc.Pool != D3DPOOL_DEFAULT) { + if (m_desc.Pool != D3DPOOL_DEFAULT && pSharedHandle) { + throw DxvkError("D3D9: Incompatible pool type for texture sharing."); + } + + if (IsPoolManaged(m_desc.Pool)) { SetAllNeedUpload(); - if (pSharedHandle) { - throw DxvkError("D3D9: Incompatible pool type for texture sharing."); - } } m_mapping = pDevice->LookupFormat(m_desc.Format); |