diff --git a/libavcodec/libx264.c b/libavcodec/libx264.c
index c6cce9ff80..c13e8a58d4 100644
--- a/libavcodec/libx264.c
+++ b/libavcodec/libx264.c
@@ -447,6 +447,9 @@ static int X264_frame(AVCodecContext *ctx, AVPacket *pkt, const AVFrame *frame,
             return ret;
     } while (!ret && !frame && x264_encoder_delayed_frames(x4->enc));
 
+    if (!ret)
+        return 0;
+
     pkt->pts = pic_out.i_pts;
     pkt->dts = pic_out.i_dts;