* Subtle bug: if you import File::stat in one module, it affects other
modules as well. So use symbolic field names everywhere (which is nicer anyway).
This commit is contained in:
		
							parent
							
								
									b1882c3ef7
								
							
						
					
					
						commit
						83252b4ca9
					
				
					 2 changed files with 7 additions and 5 deletions
				
			
		| 
						 | 
				
			
			@ -2,6 +2,7 @@
 | 
			
		|||
 | 
			
		||||
use strict;
 | 
			
		||||
use File::Temp qw(tempdir);
 | 
			
		||||
use File::stat;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Some patch generations options.
 | 
			
		||||
| 
						 | 
				
			
			@ -205,7 +206,7 @@ sub generatePatches {
 | 
			
		|||
            system("@bunzip2@ < $srcNarBz2 > $tmpDir/A") == 0
 | 
			
		||||
                or die "cannot unpack $srcNarBz2";
 | 
			
		||||
 | 
			
		||||
            if ((stat "$tmpDir/A")[7] >= $maxNarSize) {
 | 
			
		||||
            if (stat("$tmpDir/A")->size >= $maxNarSize) {
 | 
			
		||||
                print "    skipping, source is too large\n";
 | 
			
		||||
                next;
 | 
			
		||||
            }
 | 
			
		||||
| 
						 | 
				
			
			@ -213,7 +214,7 @@ sub generatePatches {
 | 
			
		|||
            system("@bunzip2@ < $dstNarBz2 > $tmpDir/B") == 0
 | 
			
		||||
                or die "cannot unpack $dstNarBz2";
 | 
			
		||||
 | 
			
		||||
            if ((stat "$tmpDir/B")[7] >= $maxNarSize) {
 | 
			
		||||
            if (stat("$tmpDir/B")->size >= $maxNarSize) {
 | 
			
		||||
                print "    skipping, destination is too large\n";
 | 
			
		||||
                next;
 | 
			
		||||
            }
 | 
			
		||||
| 
						 | 
				
			
			@ -235,8 +236,8 @@ sub generatePatches {
 | 
			
		|||
            my $narDiffHash = `@bindir@/nix-hash --flat --type $hashAlgo --base32 $tmpDir/DIFF` or die;
 | 
			
		||||
            chomp $narDiffHash;
 | 
			
		||||
 | 
			
		||||
            my $narDiffSize = (stat "$tmpDir/DIFF")[7];
 | 
			
		||||
            my $dstNarBz2Size = (stat $dstNarBz2)[7];
 | 
			
		||||
            my $narDiffSize = stat("$tmpDir/DIFF")->size;
 | 
			
		||||
            my $dstNarBz2Size = stat($dstNarBz2)->size;
 | 
			
		||||
 | 
			
		||||
            print "    size $narDiffSize; full size $dstNarBz2Size; ", $time2 - $time1, " seconds\n";
 | 
			
		||||
        
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,6 +2,7 @@
 | 
			
		|||
 | 
			
		||||
use strict;
 | 
			
		||||
use File::Temp qw(tempdir);
 | 
			
		||||
use File::stat;
 | 
			
		||||
use NixManifest;
 | 
			
		||||
 | 
			
		||||
my $hashAlgo = "sha256";
 | 
			
		||||
| 
						 | 
				
			
			@ -178,7 +179,7 @@ for (my $n = 0; $n < scalar @storePaths; $n++) {
 | 
			
		|||
    (-f $narFile) or die "narfile for $storePath not found";
 | 
			
		||||
    push @narArchives, $narFile;
 | 
			
		||||
 | 
			
		||||
    my $narbz2Size = (stat $narFile)[7];
 | 
			
		||||
    my $narbz2Size = stat($narFile)->size;
 | 
			
		||||
 | 
			
		||||
    my $references = `$binDir/nix-store --query --references '$storePath'`;
 | 
			
		||||
    die "cannot query references for `$storePath'" if $? != 0;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue