From 208acbfb82f722fb22320c381e7da8c8fb2e37e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20Th=C3=A1i=20Ng=E1=BB=8Dc=20Duy?= Date: Tue, 25 Mar 2014 20:23:26 +0700 Subject: object.h: centralize object flag allocation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit While the field "flags" is mainly used by the revision walker, it is also used in many other places. Centralize the whole flag allocation to one place for a better overview (and easier to move flags if we have too). Signed-off-by: Nguyễn Thái Ngọc Duy Signed-off-by: Junio C Hamano diff --git a/bisect.c b/bisect.c index 37200b4..48ccbf1 100644 --- a/bisect.c +++ b/bisect.c @@ -21,8 +21,7 @@ static const char *argv_checkout[] = {"checkout", "-q", NULL, "--", NULL}; static const char *argv_show_branch[] = {"show-branch", NULL, NULL}; static const char *argv_update_ref[] = {"update-ref", "--no-deref", "BISECT_HEAD", NULL, NULL}; -/* bits #0-15 in revision.h */ - +/* Remember to update object flag allocation in object.h */ #define COUNTED (1u<<16) /* diff --git a/builtin/blame.c b/builtin/blame.c index e44a6bb..599fb58 100644 --- a/builtin/blame.c +++ b/builtin/blame.c @@ -74,7 +74,7 @@ static unsigned blame_copy_score; #define BLAME_DEFAULT_MOVE_SCORE 20 #define BLAME_DEFAULT_COPY_SCORE 40 -/* bits #0..7 in revision.h, #8..11 used for merge_bases() in commit.c */ +/* Remember to update object flag allocation in object.h */ #define METAINFO_SHOWN (1u<<12) #define MORE_THAN_ONE_PATH (1u<<13) diff --git a/bundle.c b/bundle.c index e99065c..85d4a6a 100644 --- a/bundle.c +++ b/bundle.c @@ -124,6 +124,7 @@ static int list_refs(struct ref_list *r, int argc, const char **argv) return 0; } +/* Remember to update object flag allocation in object.h */ #define PREREQ_MARK (1u<<16) int verify_bundle(struct bundle_header *header, int verbose) diff --git a/commit.c b/commit.c index 6bf4fe0..96278c2 100644 --- a/commit.c +++ b/commit.c @@ -731,7 +731,7 @@ void sort_in_topological_order(struct commit_list **list, enum rev_sort_order so /* merge-base stuff */ -/* bits #0..15 in revision.h */ +/* Remember to update object flag allocation in object.h */ #define PARENT1 (1u<<16) #define PARENT2 (1u<<17) #define STALE (1u<<18) diff --git a/fetch-pack.c b/fetch-pack.c index d52de74..a7388be 100644 --- a/fetch-pack.c +++ b/fetch-pack.c @@ -26,6 +26,7 @@ static int agent_supported; static struct lock_file shallow_lock; static const char *alternate_shallow_file; +/* Remember to update object flag allocation in object.h */ #define COMPLETE (1U << 0) #define COMMON (1U << 1) #define COMMON_REF (1U << 2) diff --git a/http-push.c b/http-push.c index d4b40c9..f2c56c8 100644 --- a/http-push.c +++ b/http-push.c @@ -64,8 +64,7 @@ enum XML_Status { #define LOCK_TIME 600 #define LOCK_REFRESH 30 -/* bits #0-15 in revision.h */ - +/* Remember to update object flag allocation in object.h */ #define LOCAL (1u<<16) #define REMOTE (1u<<17) #define FETCHING (1u<<18) diff --git a/object.h b/object.h index dc5df8c..5e30066 100644 --- a/object.h +++ b/object.h @@ -26,6 +26,19 @@ struct object_array { #define OBJECT_ARRAY_INIT { 0, 0, NULL } #define TYPE_BITS 3 +/* + * object flag allocation: + * revision.h: 0---------10 + * fetch-pack.c: 0---4 + * walker.c: 0-2 + * upload-pack.c: 11----------------19 + * builtin/blame.c: 12-13 + * bisect.c: 16 + * bundle.c: 16 + * http-push.c: 16-----19 + * commit.c: 16-----19 + * sha1_name.c: 20 + */ #define FLAG_BITS 27 /* diff --git a/revision.h b/revision.h index 88967d6..531fb0d 100644 --- a/revision.h +++ b/revision.h @@ -7,6 +7,7 @@ #include "commit.h" #include "diff.h" +/* Remember to update object flag allocation in object.h */ #define SEEN (1u<<0) #define UNINTERESTING (1u<<1) #define TREESAME (1u<<2) diff --git a/sha1_name.c b/sha1_name.c index a5578f7..23bb821 100644 --- a/sha1_name.c +++ b/sha1_name.c @@ -819,6 +819,8 @@ static int get_sha1_1(const char *name, int len, unsigned char *sha1, unsigned l * For future extension, ':/!' is reserved. If you want to match a message * beginning with a '!', you have to repeat the exclamation mark. */ + +/* Remember to update object flag allocation in object.h */ #define ONELINE_SEEN (1u<<20) static int handle_one_ref(const char *path, diff --git a/upload-pack.c b/upload-pack.c index 0c44f6b..96013b3 100644 --- a/upload-pack.c +++ b/upload-pack.c @@ -17,7 +17,7 @@ static const char upload_pack_usage[] = "git upload-pack [--strict] [--timeout=] "; -/* bits #0..7 in revision.h, #8..10 in commit.c */ +/* Remember to update object flag allocation in object.h */ #define THEY_HAVE (1u << 11) #define OUR_REF (1u << 12) #define WANTED (1u << 13) diff --git a/walker.c b/walker.c index 633596e..1dd86b8 100644 --- a/walker.c +++ b/walker.c @@ -60,6 +60,7 @@ static int process_tree(struct walker *walker, struct tree *tree) return 0; } +/* Remember to update object flag allocation in object.h */ #define COMPLETE (1U << 0) #define SEEN (1U << 1) #define TO_SCAN (1U << 2) -- cgit v0.10.2-6-g49f6