Browse code

fix scan all segv handling file type MSOLE2

Steve Morgan authored on 2012/12/01 04:16:47
Showing 1 changed files
... ...
@@ -811,14 +811,15 @@ static int vba_scandata(const unsigned char *data, unsigned int len, cli_ctx *ct
811 811
     mdata[1] = &gmdata;
812 812
 
813 813
     ret = cli_scanbuff(data, len, 0, ctx, CL_TYPE_MSOLE2, mdata);
814
+    if (ret == CL_VIRUS)
815
+	viruses_found ++;
814 816
 
815 817
     if(ret != CL_VIRUS || SCAN_ALL) {
816
-	if (SCAN_ALL)
817
-	    viruses_found++;
818 818
 	ret = cli_lsig_eval(ctx, troot, &tmdata, NULL, NULL);
819
+	if (ret == CL_VIRUS)
820
+	    viruses_found++;
821
+
819 822
 	if(ret != CL_VIRUS || SCAN_ALL)
820
-	    if (SCAN_ALL)
821
-		viruses_found++;
822 823
 	    ret = cli_lsig_eval(ctx, groot, &gmdata, NULL, NULL);
823 824
     }
824 825
     cli_ac_freedata(&tmdata);