--- /usr/cmu/perl/Archive.pm.orig	Thu Mar 14 13:02:42 2002
+++ /usr/cmu/perl/Archive.pm	Thu Mar 14 13:04:09 2002
@@ -275,6 +275,7 @@
 	my $self = shift;
 	my $tarName = shift;
 	my $fHash = shift;
+	my $cursive = shift || 0;
 
 	my $baseDir = $self->{dir};
 	my @files;
@@ -282,7 +283,7 @@
 	warn "createTar for $baseDir\n" if($self->cfg('debug'));
 
 	chdir "$baseDir" || warn "Could not chdir to $baseDir: $!\n";
-	if($fHash->{totalSize} > $self->cfg('maxSize')) {
+	if($fHash->{totalSize} > $self->cfg('maxSize') && !$cursive) {
 		my $curSize = 0; my $cnt = 1; my $nHash = {};
 		my $spanTar = $tarName;
 		foreach my $f (@{ $fHash->{file} }) {
@@ -291,7 +292,7 @@
 			push(@files, $f->{name});
 			if($curSize > ($self->cfg('maxSize') - 100)) {
 				$nHash->{totalSize} = $curSize;
-				$self->createTar($spanTar.".".$cnt, $nHash);		
+				$self->createTar($spanTar.".".$cnt, $nHash, 1);		
 				$cnt++; $nHash = {}; $curSize = 0; @files = ();
 			}
 		}
