It is cleaner, and it describes better what is the idea behind the code. Signed-off-by: Johannes Schindelin <Johannes.Schindelin@xxxxxx> --- This goes on top of the --ignore-if-in-upstream patch. On Sun, 25 Jun 2006, Johannes Schindelin wrote: > - To add the patch ids of the upstream, the revision walker must > be called twice. > > So, if format-patch was called with a range "a..b" (a single > revision "a" is handled as "a..HEAD" by format-patch), a > revision walker is set up for "b..a", and the patch ids are > calculated and stored. This is done by toggling the > UNINTERESTING bits of both pending objects. > > After that, the flags of all objects are reset to 0, so that the > revisions can be walked again. The flags of the two pending > objects are then reset to their original state. It is not clean to reset the flags of all objects to 0. Instead, the commits are walked directly. Not that it matters in that particular case (the only read objects _are_ these commits). builtin-log.c | 12 ++---------- 1 files changed, 2 insertions(+), 10 deletions(-) diff --git a/builtin-log.c b/builtin-log.c index e78a9a4..e2cd975 100644 --- a/builtin-log.c +++ b/builtin-log.c @@ -160,15 +160,6 @@ static void reopen_stdout(struct commit freopen(filename, "w", stdout); } -static void reset_all_objects_flags() -{ - int i; - - for (i = 0; i < obj_allocs; i++) - if (objs[i]) - objs[i]->flags = 0; -} - static int get_patch_id(struct commit *commit, struct diff_options *options, unsigned char *sha1) { @@ -220,7 +211,8 @@ static void get_patch_ids(struct rev_inf } /* reset for next revision walk */ - reset_all_objects_flags(); + clear_commit_marks((struct commit *)o1, SEEN | UNINTERESTING); + clear_commit_marks((struct commit *)o2, SEEN | UNINTERESTING); o1->flags = flags1; o2->flags = flags2; } -- 1.4.1.rc1.gc792 - : send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html