[PATCH 3/3] d3dx9: Return E_FAIL from ValidateTechnique() for techniques with unsupported shaders.
Paul Gofman
gofmanp at gmail.com
Thu Aug 31 13:43:12 CDT 2017
On 08/31/2017 09:32 PM, Matteo Bruni wrote:
> 2017-08-31 19:40 GMT+02:00 Paul Gofman <gofmanp at gmail.com>:
>
>> static HRESULT WINAPI ID3DXEffectImpl_ValidateTechnique(ID3DXEffect* iface, D3DXHANDLE technique)
>> {
>> - struct ID3DXEffectImpl *This = impl_from_ID3DXEffect(iface);
>> + struct ID3DXEffectImpl *effect = impl_from_ID3DXEffect(iface);
>> + struct d3dx9_base_effect *base = &effect->base_effect;
>> + struct d3dx_technique *tech = get_valid_technique(base, technique);
>> + HRESULT ret = D3D_OK;
>> + unsigned int i, j;
>>
>> - FIXME("(%p)->(%p): stub\n", This, technique);
>> + FIXME("iface %p, technique %p semi-stub.\n", iface, technique);
> Do you know what else is missing for ValidateTechnique()?
> Replying to myself: the return values mentioned in
> https://msdn.microsoft.com/en-us/library/windows/desktop/bb205835(v=vs.85).aspx
> give some ideas (although E_FAIL is not in the list, figures...)
>
>
I did not test it thoroughly, but also viewed a long list of
possible specific return values in MSDN.
And yes, ironically, it does not list any special return value for
incompatible shader, and returns E_FAIL which is not listed, while I
suppose it might be the most common case in practice when application
can depend on ValidateTechnique().
More information about the wine-devel
mailing list