Signed-off-by: Josh de Kock <[email protected]>
---
libavcodec/libzvbi-teletextdec.c | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/libavcodec/libzvbi-teletextdec.c b/libavcodec/libzvbi-teletextdec.c
index d1f0a9f..2ed4a82 100644
--- a/libavcodec/libzvbi-teletextdec.c
+++ b/libavcodec/libzvbi-teletextdec.c
@@ -395,7 +395,7 @@ static int teletext_decode_frame(AVCodecContext *avctx,
void *data, int *data_si
if (!ctx->vbi) {
if (!(ctx->vbi = vbi_decoder_new()))
return AVERROR(ENOMEM);
- if (!vbi_event_handler_add(ctx->vbi, VBI_EVENT_TTX_PAGE, handler,
ctx)) {
+ if (!vbi_event_handler_register(ctx->vbi, VBI_EVENT_TTX_PAGE, handler,
ctx)) {
vbi_decoder_delete(ctx->vbi);
ctx->vbi = NULL;
return AVERROR(ENOMEM);
@@ -524,8 +524,12 @@ static int teletext_close_decoder(AVCodecContext *avctx)
subtitle_rect_free(&ctx->pages[--ctx->nb_pages].sub_rect);
av_freep(&ctx->pages);
- vbi_decoder_delete(ctx->vbi);
- ctx->vbi = NULL;
+ if (ctx->vbi) {
+ vbi_event_handler_unregister(ctx->vbi, handler, ctx);
+ vbi_decoder_delete(ctx->vbi);
+ ctx->vbi = NULL;
+ }
+
ctx->pts = AV_NOPTS_VALUE;
if (!(avctx->flags2 & AV_CODEC_FLAG2_RO_FLUSH_NOOP))
ctx->readorder = 0;
--
2.10.1 (Apple Git-78)
_______________________________________________
ffmpeg-devel mailing list
[email protected]
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel