diff --git a/libavutil/hwcontext_qsv.c b/libavutil/hwcontext_qsv.c
index 1887936e331e7aa031f9512185e1c887a7f8ab94..f550bac57254171c05c107ab0441706a324a114d 100644
--- a/libavutil/hwcontext_qsv.c
+++ b/libavutil/hwcontext_qsv.c
@@ -833,7 +833,7 @@ static int qsv_transfer_data_to(AVHWFramesContext *ctx, AVFrame *dst,
 
     mfxSyncPoint sync = NULL;
     mfxStatus err;
-    int ret;
+    int ret = 0;
 
     while (!s->session_upload_init && !s->session_upload && !ret) {
 #if HAVE_PTHREADS