static HRESULT WINAPI IDirect3DSurface9Impl_LockRect(LPDIRECT3DSURFACE9 iface, D3DLOCKED_RECT* pLockedRect, CONST RECT* pRect, DWORD Flags) { IDirect3DSurface9Impl *This = (IDirect3DSurface9Impl *)iface; HRESULT hr; TRACE("iface %p, locked_rect %p, rect %p, flags %#x.\n", iface, pLockedRect, pRect, Flags); wined3d_mutex_lock(); hr = IWineD3DSurface_Map(This->wineD3DSurface, (WINED3DLOCKED_RECT *)pLockedRect, pRect, Flags); wined3d_mutex_unlock(); return hr; }
static HRESULT WINAPI IWineD3DTextureImpl_Map(IWineD3DTexture *iface, UINT sub_resource_idx, WINED3DLOCKED_RECT *locked_rect, const RECT *rect, DWORD flags) { IWineD3DBaseTextureImpl *texture = (IWineD3DBaseTextureImpl *)iface; IWineD3DSurface *surface; TRACE("iface %p, sub_resource_idx %u, locked_rect %p, rect %s, flags %#x.\n", iface, sub_resource_idx, locked_rect, wine_dbgstr_rect(rect), flags); if (!(surface = (IWineD3DSurface *)basetexture_get_sub_resource(texture, sub_resource_idx))) { WARN("Failed to get sub-resource.\n"); return WINED3DERR_INVALIDCALL; } return IWineD3DSurface_Map(surface, locked_rect, rect, flags); }