diff --git a/modules/video_output/win32/direct3d11.cpp b/modules/video_output/win32/direct3d11.cpp
index 14442bd08b38db59d9857172b53af6bd18a52e22..80c13ceb465cf4328fa6d836e92289db0adc3966 100644
--- a/modules/video_output/win32/direct3d11.cpp
+++ b/modules/video_output/win32/direct3d11.cpp
@@ -1339,7 +1339,7 @@ static int SetupOutputFormat(vout_display_t *vd, video_format_t *fmt, vlc_video_
     if (vctx)
     {
         d3d11_video_context_t *vtcx_sys = GetD3D11ContextPrivate(vctx);
-        if (sys->picQuad.generic.textureFormat->formatTexture != vtcx_sys->format)
+        if (vtcx_sys && sys->picQuad.generic.textureFormat->formatTexture != vtcx_sys->format)
         {
             HRESULT hr;
             // check the input format can be used as input of a VideoProcessor