diff --git a/dlls/d3d10/effect.c b/dlls/d3d10/effect.c index b34df43ede9..8c595736b51 100644 --- a/dlls/d3d10/effect.c +++ b/dlls/d3d10/effect.c @@ -2655,9 +2655,14 @@ static struct ID3D10EffectDepthStencilVariable * STDMETHODCALLTYPE d3d10_effect_ static struct ID3D10EffectRasterizerVariable * STDMETHODCALLTYPE d3d10_effect_variable_AsRasterizer( ID3D10EffectVariable *iface) { - FIXME("iface %p stub!\n", iface); + struct d3d10_effect_variable *This = (struct d3d10_effect_variable *)iface; - return NULL; + TRACE("iface %p\n", iface); + + if (This->vtbl == (ID3D10EffectVariableVtbl *)&d3d10_effect_rasterizer_variable_vtbl) + return (ID3D10EffectRasterizerVariable *)This; + + return (ID3D10EffectRasterizerVariable *)&null_rasterizer_variable; } static struct ID3D10EffectSamplerVariable * STDMETHODCALLTYPE d3d10_effect_variable_AsSampler(