From: leslie Date: Sat, 7 Nov 2009 08:49:02 +0000 (+0800) Subject: sasc: fix memory trashing in ffdecsa plugin X-Git-Tag: upstream/620~139 X-Git-Url: http://www.vanbest.org/gitweb/?a=commitdiff_plain;h=0343d3ad7103c24c07deab384c0ea360e776fabf;p=sasc-ng.git sasc: fix memory trashing in ffdecsa plugin --- diff --git a/contrib/sasc-ng/dvblb_plugins/plugin_ffdecsa.c b/contrib/sasc-ng/dvblb_plugins/plugin_ffdecsa.c index e3b2ae1..030be27 100644 --- a/contrib/sasc-ng/dvblb_plugins/plugin_ffdecsa.c +++ b/contrib/sasc-ng/dvblb_plugins/plugin_ffdecsa.c @@ -15,7 +15,7 @@ #define DBG_NAME "CSA" #include "debug.h" //This is required to happen AFTER PLUGIN_ID is defined -#define FF_MAX_IDX 8 +#define FF_MAX_IDX 16 #define FF_MAX_PID 8 #define push_empty_queue(_item, _queue) { \ @@ -95,6 +95,8 @@ void update_keys(int adpt, unsigned char keytype, int index, unsigned char *key, assert(csa); if(! csa) return; + if(index < 0 || index >= FF_MAX_IDX) + return; pthread_mutex_lock(&csa->state_lock); if (keytype == 'I') //Invalidate