---
 libavcodec/dvbsubdec.c |   29 ++++++++++++++++-------------
 1 files changed, 16 insertions(+), 13 deletions(-)

diff --git a/libavcodec/dvbsubdec.c b/libavcodec/dvbsubdec.c
index cc14622..f5fc7f2 100644
--- a/libavcodec/dvbsubdec.c
+++ b/libavcodec/dvbsubdec.c
@@ -318,7 +318,7 @@ static void delete_region_display_list(DVBSubContext *ctx, 
DVBSubRegion *region)
 
 }
 
-static void delete_state(DVBSubContext *ctx)
+static void delete_state(AVCodecContext *avctx, DVBSubContext *ctx)
 {
     DVBSubRegion *region;
     DVBSubCLUT *clut;
@@ -345,7 +345,7 @@ static void delete_state(DVBSubContext *ctx)
 
     /* Should already be null */
     if (ctx->object_list)
-        av_log(0, AV_LOG_ERROR, "Memory deallocation error!\n");
+        av_log(avctx, AV_LOG_ERROR, "Memory deallocation error!\n");
 }
 
 static av_cold int dvbsub_init_decoder(AVCodecContext *avctx)
@@ -430,7 +430,7 @@ static av_cold int dvbsub_close_decoder(AVCodecContext 
*avctx)
     DVBSubContext *ctx = avctx->priv_data;
     DVBSubRegionDisplay *display;
 
-    delete_state(ctx);
+    delete_state(avctx, ctx);
 
     while (ctx->display_list) {
         display = ctx->display_list;
@@ -442,7 +442,8 @@ static av_cold int dvbsub_close_decoder(AVCodecContext 
*avctx)
     return 0;
 }
 
-static int dvbsub_read_2bit_string(uint8_t *destbuf, int dbuf_len,
+static int dvbsub_read_2bit_string(AVCodecContext *avctx,
+                                   uint8_t *destbuf, int dbuf_len,
                                    const uint8_t **srcbuf, int buf_size,
                                    int non_mod, uint8_t *map_table)
 {
@@ -540,14 +541,15 @@ static int dvbsub_read_2bit_string(uint8_t *destbuf, int 
dbuf_len,
     }
 
     if (get_bits(&gb, 6))
-        av_log(0, AV_LOG_ERROR, "DVBSub error: line overflow\n");
+        av_log(avctx, AV_LOG_ERROR, "line overflow\n");
 
     (*srcbuf) += (get_bits_count(&gb) + 7) >> 3;
 
     return pixels_read;
 }
 
-static int dvbsub_read_4bit_string(uint8_t *destbuf, int dbuf_len,
+static int dvbsub_read_4bit_string(AVCodecContext *avctx,
+                                   uint8_t *destbuf, int dbuf_len,
                                    const uint8_t **srcbuf, int buf_size,
                                    int non_mod, uint8_t *map_table)
 {
@@ -661,14 +663,15 @@ static int dvbsub_read_4bit_string(uint8_t *destbuf, int 
dbuf_len,
     }
 
     if (get_bits(&gb, 8))
-        av_log(0, AV_LOG_ERROR, "DVBSub error: line overflow\n");
+        av_log(avctx, AV_LOG_ERROR, "line overflow\n");
 
     (*srcbuf) += (get_bits_count(&gb) + 7) >> 3;
 
     return pixels_read;
 }
 
-static int dvbsub_read_8bit_string(uint8_t *destbuf, int dbuf_len,
+static int dvbsub_read_8bit_string(AVCodecContext *avctx,
+                                    uint8_t *destbuf, int dbuf_len,
                                     const uint8_t **srcbuf, int buf_size,
                                     int non_mod, uint8_t *map_table)
 {
@@ -720,7 +723,7 @@ static int dvbsub_read_8bit_string(uint8_t *destbuf, int 
dbuf_len,
     }
 
     if (*(*srcbuf)++)
-        av_log(0, AV_LOG_ERROR, "DVBSub error: line overflow\n");
+        av_log(avctx, AV_LOG_ERROR, "line overflow\n");
 
     return pixels_read;
 }
@@ -785,7 +788,7 @@ static void dvbsub_parse_pixel_data_block(AVCodecContext 
*avctx, DVBSubObjectDis
             else
                 map_table = NULL;
 
-            x_pos += dvbsub_read_2bit_string(pbuf + (y_pos * region->width) + 
x_pos,
+            x_pos += dvbsub_read_2bit_string(avctx, pbuf + (y_pos * 
region->width) + x_pos,
                                                 region->width - x_pos, &buf, 
buf_end - buf,
                                                 non_mod, map_table);
             break;
@@ -800,7 +803,7 @@ static void dvbsub_parse_pixel_data_block(AVCodecContext 
*avctx, DVBSubObjectDis
             else
                 map_table = NULL;
 
-            x_pos += dvbsub_read_4bit_string(pbuf + (y_pos * region->width) + 
x_pos,
+            x_pos += dvbsub_read_4bit_string(avctx, pbuf + (y_pos * 
region->width) + x_pos,
                                                 region->width - x_pos, &buf, 
buf_end - buf,
                                                 non_mod, map_table);
             break;
@@ -810,7 +813,7 @@ static void dvbsub_parse_pixel_data_block(AVCodecContext 
*avctx, DVBSubObjectDis
                 return;
             }
 
-            x_pos += dvbsub_read_8bit_string(pbuf + (y_pos * region->width) + 
x_pos,
+            x_pos += dvbsub_read_8bit_string(avctx, pbuf + (y_pos * 
region->width) + x_pos,
                                                 region->width - x_pos, &buf, 
buf_end - buf,
                                                 non_mod, NULL);
             break;
@@ -1114,7 +1117,7 @@ static void dvbsub_parse_page_segment(AVCodecContext 
*avctx,
     av_dlog(avctx, "Page time out %ds, state %d\n", ctx->time_out, page_state);
 
     if (page_state == 2) {
-        delete_state(ctx);
+        delete_state(avctx, ctx);
     }
 
     tmp_display_list = ctx->display_list;
-- 
1.7.7.3

_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to