# # # patch "git_export.cc" # from [67517d41da6cdb942d6e9be87e7b3b3c1507e68b] # to [2d2c9e39825bb7b6e4fa6992b99c3121d95bb5dc] # ============================================================ --- git_export.cc 67517d41da6cdb942d6e9be87e7b3b3c1507e68b +++ git_export.cc 2d2c9e39825bb7b6e4fa6992b99c3121d95bb5dc @@ -217,6 +217,7 @@ export_changes(database & db, typedef cert_vector::const_iterator cert_iterator; typedef map::const_iterator lookup_iterator; + cert_vector certs; cert_vector authors; cert_vector branches; cert_vector changelogs; @@ -224,13 +225,24 @@ export_changes(database & db, cert_vector dates; cert_vector tags; - db.get_revision_certs(*r, author_cert_name, authors); - db.get_revision_certs(*r, branch_cert_name, branches); - db.get_revision_certs(*r, changelog_cert_name, changelogs); - db.get_revision_certs(*r, comment_cert_name, comments); - db.get_revision_certs(*r, date_cert_name, dates); - db.get_revision_certs(*r, tag_cert_name, tags); + db.get_revision_certs(*r, certs); + for (cert_iterator i = certs.begin(); i != certs.end(); ++i) + { + if (i->name == author_cert_name) + authors.push_back(*i); + else if (i->name == branch_cert_name) + branches.push_back(*i); + else if (i->name == changelog_cert_name) + changelogs.push_back(*i); + else if (i->name == date_cert_name) + dates.push_back(*i); + else if (i->name == tag_cert_name) + tags.push_back(*i); + else if (i->name == comment_cert_name) + comments.push_back(*i); + } + // default to committer and author if no author certs exist // this may be mapped to a different value with the authors-file option string author_name = ""; // used as the git author