Browse code

fix possible infinite loop

git-svn-id: file:///var/lib/svn/clamav-devel/trunk/clamav-devel@1087 77e5149b-7576-45b1-b177-96237e5ba77b

Trog authored on 2004/11/13 00:32:15
Showing 2 changed files
... ...
@@ -1,3 +1,7 @@
1
+Fri Nov 12 15:31:15 GMT 2004 (trog)
2
+-----------------------------------
3
+  * libclamav/vba_extract.c: fix possible infinite loop
4
+
1 5
 Fri Nov 12 09:44:23 GMT 2004 (njh)
2 6
 ----------------------------------
3 7
   * libclamav/mbox.c:		Draft of RFC1341 support is now on by default.
... ...
@@ -827,6 +827,12 @@ static char *ppt_stream_iter(int fd)
827 827
 		}
828 828
 		ppt_print_atom_header(&atom_header);
829 829
 
830
+		if (atom_header.length <= 0) {
831
+			cli_rmdirs(out_dir);
832
+			free(out_dir);
833
+			return NULL;
834
+		}
835
+
830 836
 		if (atom_header.type == 0x1011) {
831 837
 			if (cli_readn(fd, &ole_id, 4) != 4) {
832 838
 				cli_dbgmsg("read ole_id failed\n");