[d3d11] D3D11DeviceChild subclasses must not store strong references to their parent device

This commit is contained in:
Philip Rebohle 2017-12-07 00:55:21 +01:00
parent 69b938118d
commit ddb1627985
9 changed files with 11 additions and 12 deletions

View File

@ -35,7 +35,7 @@ namespace dxvk {
void D3D11Buffer::GetDevice(ID3D11Device** ppDevice) {
*ppDevice = m_device.ref();
*ppDevice = ref(m_device);
}

View File

@ -35,7 +35,7 @@ namespace dxvk {
private:
Com<D3D11Device> m_device;
D3D11Device* const m_device;
Com<IDXGIImageResourcePrivate> m_resource;
D3D11_BUFFER_DESC m_desc;

View File

@ -70,7 +70,7 @@ namespace dxvk {
}
void GetDevice(ID3D11Device **ppDevice) final {
*ppDevice = m_device.ref();
*ppDevice = ref(m_device);
}
const D3D11ShaderModule& GetShaderModule() const {
@ -79,8 +79,8 @@ namespace dxvk {
private:
Com<D3D11Device> m_device;
D3D11ShaderModule m_module;
D3D11Device* const m_device;
D3D11ShaderModule m_module;
};

View File

@ -76,7 +76,7 @@ namespace dxvk {
void D3D11RasterizerState::GetDevice(ID3D11Device** ppDevice) {
*ppDevice = m_device.ref();
*ppDevice = ref(m_device);
}

View File

@ -35,8 +35,7 @@ namespace dxvk {
private:
Com<D3D11Device> m_device;
D3D11Device* const m_device;
D3D11_RASTERIZER_DESC m_desc;
Rc<DxvkRasterizerState> m_state;

View File

@ -35,7 +35,7 @@ namespace dxvk {
void D3D11Texture2D::GetDevice(ID3D11Device** ppDevice) {
*ppDevice = m_device.ref();
*ppDevice = ref(m_device);
}

View File

@ -41,7 +41,7 @@ namespace dxvk {
private:
Com<D3D11Device> m_device;
D3D11Device* const m_device;
Com<IDXGIImageResourcePrivate> m_resource;
D3D11_TEXTURE2D_DESC m_desc;

View File

@ -33,7 +33,7 @@ namespace dxvk {
void D3D11RenderTargetView::GetDevice(ID3D11Device** ppDevice) {
*ppDevice = m_device.ref();
*ppDevice = ref(m_device);
}

View File

@ -36,7 +36,7 @@ namespace dxvk {
private:
Com<D3D11Device> m_device;
D3D11Device* const m_device;
Com<ID3D11Resource> m_resource;
D3D11_RENDER_TARGET_VIEW_DESC m_desc;