]> www.vanbest.org Git - sasc-ng.git/commitdiff
fix adding empty CA descriptors
authorleslie <unknown>
Tue, 18 Aug 2009 09:51:43 +0000 (17:51 +0800)
committerleslie <unknown>
Tue, 18 Aug 2009 09:51:43 +0000 (17:51 +0800)
cam.c

diff --git a/cam.c b/cam.c
index f1daf38fe189bc12450c2cc5c842d78cbe2cff2b..910eb430d3c9a1eae3e79b82d394c3af6757dbd9 100644 (file)
--- 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;