Module: ffmpeg
Branch: master
Commit: 5bea615dc383cf3617c5057db4fbc6832fc64137

Author: Jindrich Makovicka <[email protected]>
Date:   Sat Feb  5 10:43:11 2011 +0000

dvbsubdec: pass correct input buffer size

In some places, dvbsubdec passes improper input buffer size to
bitstream reading functions, not accounting for reading pointer
updates.

Fixed by using buffer_end - buffer pointer instead of fixed buffer length.

Signed-off-by: Jindrich Makovicka <[email protected]>
Signed-off-by: Mans Rullgard <[email protected]>

---

 libavcodec/dvbsubdec.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/libavcodec/dvbsubdec.c b/libavcodec/dvbsubdec.c
index fe98798..8cc8d4f 100644
--- a/libavcodec/dvbsubdec.c
+++ b/libavcodec/dvbsubdec.c
@@ -792,7 +792,7 @@ static void dvbsub_parse_pixel_data_block(AVCodecContext 
*avctx, DVBSubObjectDis
                 map_table = NULL;
 
             x_pos += dvbsub_read_2bit_string(pbuf + (y_pos * region->width) + 
x_pos,
-                                                region->width - x_pos, &buf, 
buf_size,
+                                                region->width - x_pos, &buf, 
buf_end - buf,
                                                 non_mod, map_table);
             break;
         case 0x11:
@@ -807,7 +807,7 @@ static void dvbsub_parse_pixel_data_block(AVCodecContext 
*avctx, DVBSubObjectDis
                 map_table = NULL;
 
             x_pos += dvbsub_read_4bit_string(pbuf + (y_pos * region->width) + 
x_pos,
-                                                region->width - x_pos, &buf, 
buf_size,
+                                                region->width - x_pos, &buf, 
buf_end - buf,
                                                 non_mod, map_table);
             break;
         case 0x12:
@@ -817,7 +817,7 @@ static void dvbsub_parse_pixel_data_block(AVCodecContext 
*avctx, DVBSubObjectDis
             }
 
             x_pos += dvbsub_read_8bit_string(pbuf + (y_pos * region->width) + 
x_pos,
-                                                region->width - x_pos, &buf, 
buf_size,
+                                                region->width - x_pos, &buf, 
buf_end - buf,
                                                 non_mod, NULL);
             break;
 

_______________________________________________
ffmpeg-commits mailing list
[email protected]
https://lists.mplayerhq.hu/mailman/listinfo/ffmpeg-commits

Reply via email to