ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/SCRAM/src/Utilities/AddDir.pm
(Generate patch)

Comparing COMP/SCRAM/src/Utilities/AddDir.pm (file contents):
Revision 1.5 by williamc, Fri Dec 1 14:51:01 2000 UTC vs.
Revision 1.7 by sashby, Fri Dec 10 13:41:43 2004 UTC

# Line 28 | Line 28 | sub adddir {
28   chdir $startdir;
29   }
30  
31 < sub copydir {
32 <        my $src=shift;
33 <        my $dest=shift;
34 <        
35 <        use DirHandle;
36 <        use File::Copy;
37 <
38 <        # print "Copying $src to $dest\n";
39 <        adddir($dest);
40 <        my $dh=DirHandle->new($src);
41 <        if (defined $dh) {
42 <        my @allfiles=$dh->read();
43 <        
44 <        my $file;
45 <        foreach $file ( @allfiles ) {
31 > sub copydir
32 >   {
33 >   my $src=shift;
34 >   my $dest=shift;
35 >  
36 >   use DirHandle;
37 >   use File::Copy;
38 >  
39 >   adddir($dest);
40 >   my $dh=DirHandle->new($src);
41 >  
42 >   if (defined $dh)
43 >      {
44 >      my @allfiles=$dh->read();
45 >  
46 >      my $file;
47 >      foreach $file ( @allfiles )
48 >         {
49           next if $file=~/^\.\.?/;
50 <         if ( -d $src."/".$file ) {
51 <           copydir($src."/".$file,$dest."/".$file);
52 <         }
53 <         else {
54 <           copy($src."/".$file,$dest."/".$file)
50 >         if ( -d $src."/".$file )
51 >            {
52 >            copydir($src."/".$file,$dest."/".$file);
53 >            }
54 >         else
55 >            {
56 >            copy($src."/".$file,$dest."/".$file);
57 >            if ( -x $src."/".$file || -X $src."/".$file ) {chmod(0775,$dest."/".$file);}
58 >            }
59           }
60 <        }
61 <        undef $dh;
62 <        }
63 < }
60 >      undef $dh;
61 >      }
62 >   else
63 >      {
64 >      die "Attempt to open a non-existent directory ($src). Exitting\n";
65 >      }
66 >   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines