lavc/ccaption_dec: clear buffer before populating with screen contents
authorAman Gupta <aman@tmm1.net>
Sat, 9 Jan 2016 01:54:29 +0000 (17:54 -0800)
committerClément Bœsch <u@pkh.me>
Sat, 9 Jan 2016 11:23:54 +0000 (12:23 +0100)
libavcodec/ccaption_dec.c

index 92c3468..e4c4b83 100644 (file)
@@ -280,6 +280,7 @@ static int reap_screen(CCaptionSubContext *ctx, int64_t pts)
     int ret = 0;
     struct Screen *screen = ctx->screen + ctx->active_screen;
     ctx->start_time = ctx->startv_time;
+    av_bprint_clear(&ctx->buffer);
 
     for (i = 0; screen->row_used && i < SCREEN_ROWS; i++)
     {
@@ -521,7 +522,6 @@ static int decode(AVCodecContext *avctx, void *data, int *got_sub, AVPacket *avp
                 return ret;
             sub->pts = av_rescale_q(ctx->start_time, avctx->time_base, AV_TIME_BASE_Q);
             ctx->buffer_changed = 0;
-            av_bprint_clear(&ctx->buffer);
         }
     }