# # # patch "rcs_import.cc" # from [bfb657c1c6612082390eb9a00749eda29ea17730] # to [2388a42613d30026597f1d0afc3f4ba90ed777e8] # ============================================================ --- rcs_import.cc bfb657c1c6612082390eb9a00749eda29ea17730 +++ rcs_import.cc 2388a42613d30026597f1d0afc3f4ba90ed777e8 @@ -1219,20 +1219,23 @@ add_blob_dependency_edges(cvs_history & (cvs.blobs[k->second].get_digest() == (*dep)->get_digest()); ++k) { - bool found = false; + bool found_dep = false; - for (dependency_iter di = cvs.blobs[k->second].get_events().begin(); + for (dependency_iter di = + cvs.blobs[k->second].get_events().begin(); di != cvs.blobs[k->second].get_events().end(); ++ di) { if (*di == *dep) - found = true; + { + found_dep = true; + break; + } } - if (found) - { - L(FL("blob %d depends on blob %d") % i % k->second); - add_edge(i, k->second, g); - } + // add the edge, if we found the dependency *and* if the + // edge does not exist, yet. + if (found_dep && (!boost::edge(i, k->second, g).second)) + add_edge(i, k->second, g); } } }