OpenPKG CVS Repository
http://cvs.openpkg.org/
____________________________________________________________________________
Server: cvs.openpkg.org Name: Ralf S. Engelschall
Root: /v/openpkg/cvs Email: [EMAIL PROTECTED]
Module: openpkg-src Date: 28-Mar-2008 08:47:07
Branch: HEAD Handle: 2008032807470500
Modified files:
openpkg-src/monotone monotone.patch monotone.spec
Log:
apply an upstream bugfix
Summary:
Revision Changes Path
1.14 +48 -0 openpkg-src/monotone/monotone.patch
1.32 +1 -1 openpkg-src/monotone/monotone.spec
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: openpkg-src/monotone/monotone.patch
============================================================================
$ cvs diff -u -r1.13 -r1.14 monotone.patch
--- openpkg-src/monotone/monotone.patch 7 Mar 2008 12:41:36 -0000
1.13
+++ openpkg-src/monotone/monotone.patch 28 Mar 2008 07:47:05 -0000
1.14
@@ -25,6 +25,8 @@
special cases related to the missing trailing newline. The complete
Monotone test suite still succeeed with 0 failures after this change.
+Can be removed with Monotone >= 0.40!
+
Index: diff_patch.cc
--- diff_patch.cc e359a4c03c6ce548d6414dce11160fbcb6fcb831
+++ diff_patch.cc daeb9be7d8c10d33781b54debd541027618dbfce
@@ -130,3 +132,49 @@
std::string & out,
std::string const & linesep);
+-----------------------------------------------------------------------------
+
+Fix merging in a special case.
+Can be removed with Monotone >= 0.40!
+
+--- roster_merge.cc d565f9299ca85d77bd1d7f2a29196d7161f0ea08
++++ roster_merge.cc d113e5d648bd98bdc15ba7a53958496ea924bd2b
+@@ -525,15 +525,35 @@ roster_merge_result::report_duplicate_na
+ left_roster.get_name(left_nid, left_name);
+ right_roster.get_name(right_nid, right_name);
+
+- I(left_name == right_name);
+-
+ shared_ptr<roster_t const> left_lca_roster, right_lca_roster;
+ revision_id left_lca_rid, right_lca_rid;
+
+ adaptor.get_ancestral_roster(left_nid, left_lca_rid, left_lca_roster);
+ adaptor.get_ancestral_roster(right_nid, right_lca_rid,
right_lca_roster);
+
+- P(F("conflict: duplicate name '%s'") % left_name);
++ // In most cases, the left_name equals the right_name. However, maybe
++ // a parent directory got renamed on one side. In that case, the names
++ // don't match, but it's still the same directory (by node id), to
++ // which we want to add the same file (by name).
++ if (left_name == right_name)
++ {
++ file_path dir;
++ path_component basename;
++ left_name.dirname_basename(dir, basename);
++ P(F("conflict: duplicate name '%s' for the directory '%s'") %
basename % dir);
++ }
++ else
++ {
++ file_path left_dir, right_dir;
++ path_component left_basename, right_basename;
++ left_name.dirname_basename(left_dir, left_basename);
++ right_name.dirname_basename(right_dir, right_basename);
++ I(left_basename == right_basename);
++ P(F("conflict: duplicate name '%s' for the directory\n"
++ " named '%s' on the left and\n"
++ " named '%s' on the right.")
++ % left_basename % left_dir % right_dir);
++ }
+
+ node_type left_type = get_type(left_roster, left_nid);
+ node_type right_type = get_type(right_roster, right_nid);
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/monotone/monotone.spec
============================================================================
$ cvs diff -u -r1.31 -r1.32 monotone.spec
--- openpkg-src/monotone/monotone.spec 7 Mar 2008 12:41:36 -0000
1.31
+++ openpkg-src/monotone/monotone.spec 28 Mar 2008 07:47:05 -0000
1.32
@@ -32,7 +32,7 @@
Group: SCM
License: GPL
Version: 0.39
-Release: 20080307
+Release: 20080328
# package options
%option with_rse yes
@@ .
______________________________________________________________________
OpenPKG http://openpkg.org
CVS Repository Commit List [email protected]