--- a/dlls/d3dx9_36/effect.c	2018-03-30 19:30:27.000000000 +0200
+++ b/dlls/d3dx9_36/effect.c	2018-04-11 13:11:16.393208324 +0200
@@ -4202,7 +4202,7 @@ static HRESULT WINAPI ID3DXEffectImpl_Be
 
     TRACE("iface %p, passes %p, flags %#x.\n", iface, passes, flags);
 
-    if (passes && technique)
+    if (technique)
     {
         if (flags & ~(D3DXFX_DONOTSAVESTATE | D3DXFX_DONOTSAVESAMPLERSTATE | D3DXFX_DONOTSAVESHADERSTATE))
             WARN("Invalid flags (%#x) specified.\n", flags);
@@ -4234,7 +4234,7 @@ static HRESULT WINAPI ID3DXEffectImpl_Be
                 ERR("StateBlock Capture failed, hr %#x.\n", hr);
         }
 
-        *passes = technique->pass_count;
+        if (passes) *passes = technique->pass_count;
         effect->started = TRUE;
         effect->begin_flags = flags;
 
