Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

61 lines
1.2 KiB

#! /bin/perl
#
# Usage: UnlockXPFiles file ...
# or UnlockXPFiles < filecontaininglist
#
@lockedfiles = ('LockedDB', 'LockedDrivers', 'LockedFiles');
@list = @ARGV? @ARGV : <STDIN>;
for (@list) {
chomp;
s/ //g;
$inlist{lc $_}++;
}
$sdxroot = $ENV{'SDXROOT'};
$popdir = "$sdxroot\\MergedComponents\\PopFilter";
die "SDXROOT not defined\n" unless $sdxroot;
for (@lockedfiles) {
$fname{lc $_} = "$popdir\\$_";
die "$_ not opened\n" unless -w $fname{lc $_};
}
for (@lockedfiles) {
$t = $fname{lc $_};
open IFD, '<' . $t or die "Could not open $t\n";
open OFD, '>' . $t . '-NEW' or die "Could not open $t\n";
for (<IFD>) {
($file) = split;
$file = lc $file;
do {$count{$file}++; next;} if $inlist{$file};
print OFD $_;
}
close OFD;
close IFD;
}
for (@list) {
$fatal++, print "ERROR: $_ not found in files\n" if $count{lc $_} != 2;
}
exit 1 if $fatal;
print "\nDO:\n";
for (@lockedfiles) {
$t = $fname{lc $_};
print "copy $t-NEW\t$t\n";
}
print "\nRun 'sd submit $popdir\\Locked*' to check-in changes\n\n";
exit 0;