# # # patch "rcs_import.cc" # from [0c2323a0b592c9274762ddb169221f69564f9a1b] # to [0106a78f859fc8c21c76e447b86d9a779f83fc9e] # ============================================================ --- rcs_import.cc 0c2323a0b592c9274762ddb169221f69564f9a1b +++ rcs_import.cc 0106a78f859fc8c21c76e447b86d9a779f83fc9e @@ -613,6 +613,36 @@ public: } }; +string +get_event_repr(cvs_history & cvs, cvs_event_ptr ev) +{ + if (ev->get_digest().is_commit()) + { + shared_ptr< cvs_commit > ce = + boost::static_pointer_cast(ev); + return (F("commit rev %s on file %s") + % cvs.rcs_version_interner.lookup(ce->rcs_version) + % cvs.path_interner.lookup(ev->path)).str(); + } + else if (ev->get_digest().is_branch()) + { + shared_ptr< cvs_event_branch > be = + boost::static_pointer_cast(ev); + return (F("branch to %s on file %s") + % cvs.branchname_interner.lookup(be->branchname) + % cvs.path_interner.lookup(ev->path)).str(); + } + else + { + I(ev->get_digest().is_tag()); + shared_ptr< cvs_event_tag > te = + boost::static_pointer_cast(ev); + return (F("tag %s on file %s") + % cvs.tag_interner.lookup(te->tag) + % cvs.path_interner.lookup(ev->path)).str(); + } +} + static bool is_sbr(shared_ptr dl, shared_ptr dt) @@ -998,12 +1028,9 @@ solve_violation(cvs_history & cvs, t_sol cvs_event_ptr ev = solution.first->second; int direction = solution.second; - L(FL("Resolving conflicting timestamps of these events:")); + W(F("Resolving conflicting timestamps of: %s and %s") + % get_event_repr(cvs, dep) % get_event_repr(cvs, ev)); - if (dep->get_digest().is_commit() && ev->get_digest().is_commit()) - W(F("Resolving conflicting commit timestamps of file %s:") - % cvs.path_interner.lookup(ev->path)); - if (direction == 0) { // downward adjustment, i.e. adjusting all dependents @@ -1017,7 +1044,8 @@ solve_violation(cvs_history & cvs, t_sol if (e->adj_time <= time_goal) { - W(F(" adjusting event by %d seconds.") + W(F(" adjusting event %s by %d seconds.") + % get_event_repr(cvs, e) % (time_goal - e->adj_time)); e->adj_time = time_goal; for (dependency_iter j = e->dependents.begin(); @@ -1040,7 +1068,8 @@ solve_violation(cvs_history & cvs, t_sol if (e->adj_time >= time_goal) { - W(F(" adjusting event by %d seconds.") + W(F(" adjusting event %s by %d seconds.") + % get_event_repr(cvs, e) % (e->adj_time - time_goal)); e->adj_time = time_goal; for (dependency_iter j = e->dependencies.begin(); @@ -1085,8 +1114,6 @@ sanitize_rcs_file_timestamps(cvs_history if (violations.empty()) break; - W(F("%d timestamp <-> dependency violations.") % violations.size()); - t_solution x = get_cheapest_violation_to_solve(violations); solve_violation(cvs, x); }