[PATCH 3/6] d3dx11: Add D3DX11SaveTextureToFileA/W() stub.

Liam Middlebrook lmiddlebrook at nvidia.com
Mon Nov 11 04:27:12 CST 2019



On 11/6/19 1:06 AM, Matteo Bruni wrote:
> From: Liam Middlebrook <lmiddlebrook at nvidia.com>
> 
> Signed-off-by: Liam Middlebrook <lmiddlebrook at nvidia.com>
> Signed-off-by: Matteo Bruni <mbruni at codeweavers.com>
> ---
> v3: Add the prototypes to the header, thank you Andrey.
> 
> We aren't using "Reviewed-by" tags at the moment so I got rid of Andy
> Ritger's; the review is appreciated nevertheless.
> I guess in the future you could sign-off the patch instead, that
> will be preserved. I didn't feel comfortable in changing the tag
> myself though.

The "Reviewed-by" tag is an artifact of our Open Source contribution process for 
mailing lists. A more fitting tag may be "Reviewed-for-public-release-by" albeit a 
bit wordy. I agree that changing the tag to "Signed-off-by" wouldn't be correct in 
this case.

> 
> BTW, do you know (and, can you mention) any specific application
> that's fixed by this?

I'm not aware of any publicly available applications which are fixed by this.


Thanks,

Liam Middlebrook

> 
>   dlls/d3dx11_42/d3dx11_42.spec |  4 ++--
>   dlls/d3dx11_43/d3dx11_43.spec |  4 ++--
>   dlls/d3dx11_43/texture.c      | 18 ++++++++++++++++++
>   include/d3dx11tex.h           | 10 ++++------
>   4 files changed, 26 insertions(+), 10 deletions(-)
> 
> diff --git a/dlls/d3dx11_42/d3dx11_42.spec b/dlls/d3dx11_42/d3dx11_42.spec
> index dde8821a304..30bdba42441 100644
> --- a/dlls/d3dx11_42/d3dx11_42.spec
> +++ b/dlls/d3dx11_42/d3dx11_42.spec
> @@ -39,6 +39,6 @@
>   @ stub D3DX11PreprocessShaderFromResourceA
>   @ stub D3DX11PreprocessShaderFromResourceW
>   @ stub D3DX11SHProjectCubeMap
> -@ stub D3DX11SaveTextureToFileA
> -@ stub D3DX11SaveTextureToFileW
> +@ stdcall D3DX11SaveTextureToFileA(ptr ptr long str)
> +@ stdcall D3DX11SaveTextureToFileW(ptr ptr long wstr)
>   @ stdcall D3DX11SaveTextureToMemory(ptr ptr long ptr long)
> diff --git a/dlls/d3dx11_43/d3dx11_43.spec b/dlls/d3dx11_43/d3dx11_43.spec
> index dde8821a304..30bdba42441 100644
> --- a/dlls/d3dx11_43/d3dx11_43.spec
> +++ b/dlls/d3dx11_43/d3dx11_43.spec
> @@ -39,6 +39,6 @@
>   @ stub D3DX11PreprocessShaderFromResourceA
>   @ stub D3DX11PreprocessShaderFromResourceW
>   @ stub D3DX11SHProjectCubeMap
> -@ stub D3DX11SaveTextureToFileA
> -@ stub D3DX11SaveTextureToFileW
> +@ stdcall D3DX11SaveTextureToFileA(ptr ptr long str)
> +@ stdcall D3DX11SaveTextureToFileW(ptr ptr long wstr)
>   @ stdcall D3DX11SaveTextureToMemory(ptr ptr long ptr long)
> diff --git a/dlls/d3dx11_43/texture.c b/dlls/d3dx11_43/texture.c
> index bc30015102f..ee6808d76d6 100644
> --- a/dlls/d3dx11_43/texture.c
> +++ b/dlls/d3dx11_43/texture.c
> @@ -63,6 +63,24 @@ HRESULT WINAPI D3DX11CreateTextureFromMemory(ID3D11Device *device, const void *d
>       return E_NOTIMPL;
>   }
>   
> +HRESULT WINAPI D3DX11SaveTextureToFileW(ID3D11DeviceContext *context, ID3D11Resource *texture,
> +        D3DX11_IMAGE_FILE_FORMAT format, const WCHAR *filename)
> +{
> +    FIXME("context %p, texture %p, format %u, filename %s stub!\n",
> +            context, texture, format, debugstr_w(filename));
> +
> +    return E_NOTIMPL;
> +}
> +
> +HRESULT WINAPI D3DX11SaveTextureToFileA(ID3D11DeviceContext *context, ID3D11Resource *texture,
> +        D3DX11_IMAGE_FILE_FORMAT format, const char *filename)
> +{
> +    FIXME("context %p, texture %p, format %u, filename %s stub!\n",
> +            context, texture, format, debugstr_a(filename));
> +
> +    return E_NOTIMPL;
> +}
> +
>   HRESULT WINAPI D3DX11SaveTextureToMemory(ID3D11DeviceContext *context, ID3D11Resource *texture,
>           D3DX11_IMAGE_FILE_FORMAT format, ID3D10Blob **buffer, UINT flags)
>   {
> diff --git a/include/d3dx11tex.h b/include/d3dx11tex.h
> index 4f792ec13ef..b7c00ac4fde 100644
> --- a/include/d3dx11tex.h
> +++ b/include/d3dx11tex.h
> @@ -110,23 +110,21 @@ extern "C" {
>   HRESULT WINAPI D3DX11CreateShaderResourceViewFromMemory(ID3D11Device *device, const void *data,
>           SIZE_T data_size, D3DX11_IMAGE_LOAD_INFO *load_info, ID3DX11ThreadPump *pump,
>           ID3D11ShaderResourceView **view, HRESULT *hresult);
> -
>   HRESULT WINAPI D3DX11CreateTextureFromFileA(ID3D11Device *device, const char *filename,
>           D3DX11_IMAGE_LOAD_INFO *load_info, ID3DX11ThreadPump *pump, ID3D11Resource **texture,
>           HRESULT *hresult);
> -
>   HRESULT WINAPI D3DX11CreateTextureFromFileW(ID3D11Device *device, const WCHAR *filename,
>           D3DX11_IMAGE_LOAD_INFO *load_info, ID3DX11ThreadPump *pump, ID3D11Resource **texture,
>           HRESULT *hresult);
> -
>   HRESULT WINAPI D3DX11CreateTextureFromMemory(ID3D11Device *device, const void *src_data, SIZE_T src_data_size,
>           D3DX11_IMAGE_LOAD_INFO *loadinfo, ID3DX11ThreadPump *pump, ID3D11Resource **texture, HRESULT *hresult);
> -
>   HRESULT WINAPI D3DX11FilterTexture(ID3D11DeviceContext *context, ID3D11Resource *texture, UINT src_level, UINT filter);
> -
>   HRESULT WINAPI D3DX11GetImageInfoFromMemory(const void *src_data, SIZE_T src_data_size, ID3DX11ThreadPump *pump,
>           D3DX11_IMAGE_INFO *img_info, HRESULT *hresult);
> -
> +HRESULT WINAPI D3DX11SaveTextureToFileA(ID3D11DeviceContext *context, ID3D11Resource *texture,
> +        D3DX11_IMAGE_FILE_FORMAT format, const char *filename);
> +HRESULT WINAPI D3DX11SaveTextureToFileW(ID3D11DeviceContext *context, ID3D11Resource *texture,
> +        D3DX11_IMAGE_FILE_FORMAT format, const WCHAR *filename);
>   HRESULT WINAPI D3DX11SaveTextureToMemory(ID3D11DeviceContext *context, ID3D11Resource *texture,
>           D3DX11_IMAGE_FILE_FORMAT format, ID3D10Blob **buffer, UINT flags);
>   
> 

-----------------------------------------------------------------------------------
This email message is for the sole use of the intended recipient(s) and may contain
confidential information.  Any unauthorized review, use, disclosure or distribution
is prohibited.  If you are not the intended recipient, please contact the sender by
reply email and destroy all copies of the original message.
-----------------------------------------------------------------------------------



More information about the wine-devel mailing list