pkg://svk-1.04-2.i586.rpm:289601/
usr/
lib/
perl5/
vendor_perl/
5.8.7/
SVK/
Resolve/TkDiff.pm
info downloads
package SVK::Resolve::TkDiff;
use strict;
use base 'SVK::Resolve';
sub xfind_command {
my $self = shift;
$self->{diff3} = $self->SUPER::find_command('diff3') or return;
return $self->SUPER::find_command(@_);
}
sub arguments {
my $self = shift;
open my $in, '<', $self->{merged} or die $!;
open my $out, '>', "$self->{merged}.tkdiff" or die $!;
while (<$in>) {
if (m/==== .*$self->{marker}/) {
print $out "=======\n";
while (<$in>) {
last if m/==== .*$self->{marker}/;
}
next;
}
if (/^([<>])(?=.*$self->{marker})/) {
if ($1 eq '<') {
print $out ">>>>>>> YOURS $self->{marker}\n";
}
else {
print $out "<<<<<<< THEIRS $self->{marker}\n";
}
next;
}
print $out $_;
}
return (
-conflict => "$self->{merged}.tkdiff",
-o => $self->{merged},
);
}
sub run_resolver {
my $self = shift;
$self->SUPER::run_resolver(@_);
return -e $self->{merged};
}
sub DESTROY {
my $self = shift;
unlink "$self->{merged}.tkdiff";
}
1;