From fd08e529ca9eaef143ee753dd933d74d0ebf9ec5 Mon Sep 17 00:00:00 2001 From: Ward Wouts Date: Sun, 25 Jan 2004 15:27:10 +0000 Subject: [PATCH] fix readrights --- mycp/mycp | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/mycp/mycp b/mycp/mycp index 0f111a5..18a4ecf 100755 --- a/mycp/mycp +++ b/mycp/mycp @@ -31,6 +31,7 @@ use vars qw( $hostname $cvspath $editor + $catcmd $cpcmd $cvscmd $mkdircmd @@ -41,6 +42,7 @@ use vars qw( $hostname = hostname(); #my $cvspath = "$ENV{HOME}/worktrees/systems/$hostname"; $editor = "vi"; +$catcmd = "/bin/cat"; $cpcmd = "/bin/cp"; $cvscmd = "/usr/bin/cvs"; $mkdircmd = "/bin/mkdir"; @@ -324,12 +326,8 @@ sub cmptocvs($) { sub cmp($$) { my $source = shift; my $target = shift; - open(FH, "<$source") or die "Couldn't open file $source: $!"; - my $sf = do { local $/; }; - close(FH); - open(FH, "<$target") or die "Couldn't open file $target: $!"; - my $tf = do { local $/; }; - close(FH); + my $sf = &slurp($source); + my $tf = &slurp($target); $tf eq $sf; } @@ -368,7 +366,11 @@ sub fullpath($) { sub slurp($) { my $file = shift; - open(FH, "<$file") or die "Couldn't open $file: $!"; + if ( -r $file) { + open(FH, "<$file") or die "Couldn't open $file: $!"; + } else { + open(FH, "$sudocmd $catcmd $file|") or die "Couldn't exec $sudocmd $catcmd $file: $!"; + } my $result = do { local $/; ; }; close FH; return $result;