[SCM] libav/experimental: Check symbol validity to avoid a crash, fixes issue 2523.

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 17:21:56 UTC 2013


The following commit has been merged in the experimental branch:
commit eb40d7ffa7d455697849a0a505ca42836b30aa6d
Author: Daniel Kang <daniel.d.kang at gmail.com>
Date:   Sat Jan 15 10:18:38 2011 +0000

    Check symbol validity to avoid a crash, fixes issue 2523.
    
    Patch by Daniel Kang, daniel.d.kang at gmail
    
    Originally committed as revision 26360 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavcodec/ivi_common.c b/libavcodec/ivi_common.c
index b158458..0e552bc 100644
--- a/libavcodec/ivi_common.c
+++ b/libavcodec/ivi_common.c
@@ -404,6 +404,10 @@ int ff_ivi_decode_blocks(GetBitContext *gb, IVIBandDesc *band, IVITile *tile)
                         hi  = get_vlc2(gb, band->blk_vlc.tab->table, IVI_VLC_BITS, 1);
                         val = IVI_TOSIGNED((hi << 6) | lo); /* merge them and convert into signed val */
                     } else {
+                        if (sym >= 256U) {
+                            av_log(NULL, AV_LOG_ERROR, "Invalid sym encountered: %d.\n", sym);
+                            return -1;
+                        }
                         run = rvmap->runtab[sym];
                         val = rvmap->valtab[sym];
                     }

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list