From: leslie Date: Tue, 18 Aug 2009 09:51:43 +0000 (+0800) Subject: fix adding empty CA descriptors X-Git-Tag: upstream/620~191 X-Git-Url: http://www.vanbest.org/gitweb/?a=commitdiff_plain;h=b7aed836a7decbf5b7edd9e9d9bb805903055eff;p=sasc-ng.git fix adding empty CA descriptors --- diff --git a/cam.c b/cam.c index f1daf38..910eb43 100644 --- a/cam.c +++ b/cam.c @@ -2264,7 +2264,8 @@ void cScCamSlot::Process(const unsigned char *data, int len) LBPUT("/%x",dlen); if(ilen>0 && dlen>=ilen) { ci_cmd=data[0]; - prg->caDescr.Set(&data[1],ilen-1); + if(ilen>1) + prg->caDescr.Set(&data[1],ilen-1); LBPUT(" ci_cmd(G)=%02x",ci_cmd); } data+=ilen; dlen-=ilen; @@ -2277,8 +2278,10 @@ void cScCamSlot::Process(const unsigned char *data, int len) LBPUT("/%x",dlen); if(ilen>0 && dlen>=ilen) { ci_cmd=data[0]; - pid->caDescr.Set(&data[1],ilen-1); - prg->SetPidCaDescr(true); + if(ilen>1) { + pid->caDescr.Set(&data[1],ilen-1); + prg->SetPidCaDescr(true); + } LBPUT(" ci_cmd(S)=%x",ci_cmd); } data+=ilen; dlen-=ilen;