diff --git a/libavformat/mov.c b/libavformat/mov.c
index 42d7836b69..b518bfb87b 100644
--- a/libavformat/mov.c
+++ b/libavformat/mov.c
@@ -3325,6 +3325,10 @@ static int get_edit_list_entry(MOVContext *mov,
     }
     *edit_list_duration = av_rescale(*edit_list_duration, msc->time_scale,
                                      global_timescale);
+
+    if (*edit_list_duration + (uint64_t)*edit_list_media_time > INT64_MAX)
+        *edit_list_duration = 0;
+
     return 1;
 }