[svk-commit] r2750 - branches/path-resolver/lib/SVK/Editor

nobody at bestpractical.com nobody at bestpractical.com
Tue Apr 22 06:00:18 EDT 2008


Author: ruz
Date: Tue Apr 22 06:00:18 2008
New Revision: 2750

Modified:
   branches/path-resolver/lib/SVK/Editor/Merge.pm

Log:
* activate path resolver on add_directory add this only or all actions

Modified: branches/path-resolver/lib/SVK/Editor/Merge.pm
==============================================================================
--- branches/path-resolver/lib/SVK/Editor/Merge.pm	(original)
+++ branches/path-resolver/lib/SVK/Editor/Merge.pm	Tue Apr 22 06:00:18 2008
@@ -638,6 +638,25 @@
     }
 
     my $pool = pop @arg;
+    if ($self->{return_back}{$pdir} || $self->{returned_back}{$pdir}) {
+        require SVK::PathResolve;
+        my $action = SVK::PathResolve->new->add_directory($path);
+        if ( $action eq 's' ) {
+            ++$self->{skipped};
+            $self->{notify}->node_status ($path, '');
+            return undef;
+        }
+        elsif ( $action eq 'o' ) {
+            $self->add_directory_back( $pool );
+        }
+        elsif ( $action eq 'a' ) {
+            $self->add_directory_back( 1, $pool );
+        }
+        else {
+            die "uknown action";
+        }
+    }
+
     my $touched = $self->{notify}->node_status($path);
     # This comes from R (D+A) where the D has conflict
     if ($touched && $touched eq 'C') {
@@ -666,6 +685,7 @@
 					     @arg, $pool);
 	unless (defined $baton) {
 	    $self->{notify}->flush ($path);
+            $logger->error("no baton");
 	    return undef;
 	}
 	$self->{storage_baton}{$path} = $baton;
@@ -709,7 +729,6 @@
     $self->{returned_back}{$_} = 1 foreach @add;
 }
 
-
 sub resolve_copy {
     my ($self, $path, $from, $rev) = @_;
     die "unknown copy $from $rev for $path"


More information about the svk-commit mailing list