--- libavfilter/vf_scale_d3d11.c.orig	2025-12-11 20:55:58.868401500 -0800
+++ libavfilter/vf_scale_d3d11.c	2025-12-11 21:28:08.890852000 -0800
@@ -340,13 +340,6 @@
         return AVERROR(EINVAL);
     }
 
-    ///< Propagate hw_frames_ctx to output
-    outl->hw_frames_ctx = av_buffer_ref(inl->hw_frames_ctx);
-    if (!outl->hw_frames_ctx) {
-        av_log(ctx, AV_LOG_ERROR, "Failed to propagate hw_frames_ctx to output\n");
-        return AVERROR(ENOMEM);
-    }
-
     ///< Initialize filter's hardware device context
     if (!s->hw_device_ctx) {
         AVHWFramesContext *in_frames_ctx = (AVHWFramesContext *)inl->hw_frames_ctx->data;
@@ -394,6 +387,7 @@
         return ret;
     }
 
+    ///< Propagate hw_frames_ctx to output
     outl->hw_frames_ctx = av_buffer_ref(s->hw_frames_ctx_out);
     if (!outl->hw_frames_ctx)
         return AVERROR(ENOMEM);
