[svk-commit] r2373 - in trunk: lib/SVK t
nobody at bestpractical.com
nobody at bestpractical.com
Tue Apr 3 03:29:23 EDT 2007
Author: clkao
Date: Tue Apr 3 03:29:22 2007
New Revision: 2373
Added:
trunk/t/07smerge-copy2.t
Modified:
trunk/MANIFEST
trunk/lib/SVK/Merge.pm
Log:
Fix the mysterious "file not found at revision 0" bug when
smerge to a mirror where copy source is not normalized.
Modified: trunk/MANIFEST
==============================================================================
--- trunk/MANIFEST (original)
+++ trunk/MANIFEST Tue Apr 3 03:29:22 2007
@@ -200,6 +200,7 @@
t/07smerge-branch-renamed.t
t/07smerge-copy-co.t
t/07smerge-copy.t
+t/07smerge-copy2.t
t/07smerge-delete.t
t/07smerge-dir-replaced.t
t/07smerge-external.t
Modified: trunk/lib/SVK/Merge.pm
==============================================================================
--- trunk/lib/SVK/Merge.pm (original)
+++ trunk/lib/SVK/Merge.pm Tue Apr 3 03:29:22 2007
@@ -611,12 +611,14 @@
$self->resolve_copy($srcinfo, $dstinfo, @_);
return unless defined $dst_from;
# ensure the dst from path exists
- return unless $self->{dst}->root->fs->revision_root($dst_fromrev)->check_path($dst_from);
+ my $dst_path = SVK::Path->real_new({depot => $self->{dst}->depot, path => $dst_from, revision => $dst_fromrev});
+ return unless $dst_path->root->check_path($dst_path->path);
+ $dst_path->normalize;
# Because the delta still need to carry the copy
# information of the source, make merge editor note
# the mapping so it can do the translation
$meditor->copy_info($src_from, $src_fromrev,
- $dst_from, $dst_fromrev);
+ $dst_path->path, $dst_path->revision);
return ($src_from, $src_fromrev);
} );
Added: trunk/t/07smerge-copy2.t
==============================================================================
--- (empty file)
+++ trunk/t/07smerge-copy2.t Tue Apr 3 03:29:22 2007
@@ -0,0 +1,12 @@
+#!/usr/bin/perl -w
+
+# TODO: Write a smerge test that includes a copy from rev that isn't
+# resolvable to the mirror's remote rev. This resulted in mysterious
+# 'file not found: revision 0' and is now fixed.
+
+use Test::More tests => 1;
+
+TODO: {
+todo_skip "doesn't exist", 1;
+
+}
More information about the svk-commit
mailing list