d3d8: Implement IDirect3DCubeTexture8 private data handling on top of wined3d_resource.
This commit is contained in:
parent
ffb58ed445
commit
ccf2ff7089
|
@ -109,13 +109,15 @@ static HRESULT WINAPI IDirect3DCubeTexture8Impl_SetPrivateData(IDirect3DCubeText
|
||||||
REFGUID refguid, const void *pData, DWORD SizeOfData, DWORD Flags)
|
REFGUID refguid, const void *pData, DWORD SizeOfData, DWORD Flags)
|
||||||
{
|
{
|
||||||
IDirect3DCubeTexture8Impl *This = impl_from_IDirect3DCubeTexture8(iface);
|
IDirect3DCubeTexture8Impl *This = impl_from_IDirect3DCubeTexture8(iface);
|
||||||
|
struct wined3d_resource *resource;
|
||||||
HRESULT hr;
|
HRESULT hr;
|
||||||
|
|
||||||
TRACE("iface %p, guid %s, data %p, data_size %u, flags %#x.\n",
|
TRACE("iface %p, guid %s, data %p, data_size %u, flags %#x.\n",
|
||||||
iface, debugstr_guid(refguid), pData, SizeOfData, Flags);
|
iface, debugstr_guid(refguid), pData, SizeOfData, Flags);
|
||||||
|
|
||||||
wined3d_mutex_lock();
|
wined3d_mutex_lock();
|
||||||
hr = wined3d_texture_set_private_data(This->wined3d_texture, refguid, pData, SizeOfData, Flags);
|
resource = wined3d_texture_get_resource(This->wined3d_texture);
|
||||||
|
hr = wined3d_resource_set_private_data(resource, refguid, pData, SizeOfData, Flags);
|
||||||
wined3d_mutex_unlock();
|
wined3d_mutex_unlock();
|
||||||
|
|
||||||
return hr;
|
return hr;
|
||||||
|
@ -125,13 +127,15 @@ static HRESULT WINAPI IDirect3DCubeTexture8Impl_GetPrivateData(IDirect3DCubeText
|
||||||
REFGUID refguid, void *pData, DWORD *pSizeOfData)
|
REFGUID refguid, void *pData, DWORD *pSizeOfData)
|
||||||
{
|
{
|
||||||
IDirect3DCubeTexture8Impl *This = impl_from_IDirect3DCubeTexture8(iface);
|
IDirect3DCubeTexture8Impl *This = impl_from_IDirect3DCubeTexture8(iface);
|
||||||
|
struct wined3d_resource *resource;
|
||||||
HRESULT hr;
|
HRESULT hr;
|
||||||
|
|
||||||
TRACE("iface %p, guid %s, data %p, data_size %p.\n",
|
TRACE("iface %p, guid %s, data %p, data_size %p.\n",
|
||||||
iface, debugstr_guid(refguid), pData, pSizeOfData);
|
iface, debugstr_guid(refguid), pData, pSizeOfData);
|
||||||
|
|
||||||
wined3d_mutex_lock();
|
wined3d_mutex_lock();
|
||||||
hr = wined3d_texture_get_private_data(This->wined3d_texture, refguid, pData, pSizeOfData);
|
resource = wined3d_texture_get_resource(This->wined3d_texture);
|
||||||
|
hr = wined3d_resource_get_private_data(resource, refguid, pData, pSizeOfData);
|
||||||
wined3d_mutex_unlock();
|
wined3d_mutex_unlock();
|
||||||
|
|
||||||
return hr;
|
return hr;
|
||||||
|
@ -141,12 +145,14 @@ static HRESULT WINAPI IDirect3DCubeTexture8Impl_FreePrivateData(IDirect3DCubeTex
|
||||||
REFGUID refguid)
|
REFGUID refguid)
|
||||||
{
|
{
|
||||||
IDirect3DCubeTexture8Impl *This = impl_from_IDirect3DCubeTexture8(iface);
|
IDirect3DCubeTexture8Impl *This = impl_from_IDirect3DCubeTexture8(iface);
|
||||||
|
struct wined3d_resource *resource;
|
||||||
HRESULT hr;
|
HRESULT hr;
|
||||||
|
|
||||||
TRACE("iface %p, guid %s.\n", iface, debugstr_guid(refguid));
|
TRACE("iface %p, guid %s.\n", iface, debugstr_guid(refguid));
|
||||||
|
|
||||||
wined3d_mutex_lock();
|
wined3d_mutex_lock();
|
||||||
hr = wined3d_texture_free_private_data(This->wined3d_texture, refguid);
|
resource = wined3d_texture_get_resource(This->wined3d_texture);
|
||||||
|
hr = wined3d_resource_free_private_data(resource, refguid);
|
||||||
wined3d_mutex_unlock();
|
wined3d_mutex_unlock();
|
||||||
|
|
||||||
return hr;
|
return hr;
|
||||||
|
|
Loading…
Reference in New Issue