Browse Source

Remove insane overlapping bit ranges from epoch.c

..and move the DUPCHECK to rev-list.c since both the merge-order and the
upcoming topo-sort get confused by dups.
maint
Linus Torvalds 20 years ago
parent
commit
bce6286670
  1. 10
      epoch.c
  2. 12
      epoch.h
  3. 6
      rev-list.c

10
epoch.c

@ -582,14 +582,8 @@ int sort_list_in_merge_order(struct commit_list *list, emitter_func emitter) @@ -582,14 +582,8 @@ int sort_list_in_merge_order(struct commit_list *list, emitter_func emitter)
int action = CONTINUE;
struct commit_list *reversed = NULL;

for (; list; list = list->next) {
struct commit *next = list->item;

if (!(next->object.flags & DUPCHECK)) {
next->object.flags |= DUPCHECK;
commit_list_insert(list->item, &reversed);
}
}
for (; list; list = list->next)
commit_list_insert(list->item, &reversed);

if (!reversed)
return ret;

12
epoch.h

@ -10,12 +10,12 @@ typedef int (*emitter_func) (struct commit *); @@ -10,12 +10,12 @@ typedef int (*emitter_func) (struct commit *);

int sort_list_in_merge_order(struct commit_list *list, emitter_func emitter);

#define UNINTERESTING (1u<<2)
#define BOUNDARY (1u<<3)
#define VISITED (1u<<4)
#define DISCONTINUITY (1u<<5)
#define DUPCHECK (1u<<6)
#define LAST_EPOCH_FLAG (1u<<6)
/* Low bits are used by rev-list */
#define UNINTERESTING (1u<<10)
#define BOUNDARY (1u<<11)
#define VISITED (1u<<12)
#define DISCONTINUITY (1u<<13)
#define LAST_EPOCH_FLAG (1u<<14)


#endif /* EPOCH_H */

6
rev-list.c

@ -8,7 +8,8 @@ @@ -8,7 +8,8 @@
#define SEEN (1u << 0)
#define INTERESTING (1u << 1)
#define COUNTED (1u << 2)
#define SHOWN (LAST_EPOCH_FLAG << 2)
#define SHOWN (1u << 3)
#define DUPCHECK (1u << 4)

static const char rev_list_usage[] =
"usage: git-rev-list [OPTION] commit-id <commit-id>\n"
@ -485,6 +486,9 @@ int main(int argc, char **argv) @@ -485,6 +486,9 @@ int main(int argc, char **argv)
commit = get_commit_reference(arg, flags);
if (!commit)
continue;
if (commit->object.flags & DUPCHECK)
continue;
commit->object.flags |= DUPCHECK;
insert(commit, &list);
}


Loading…
Cancel
Save