revision: rename bit to do_not_die_on_missing_objects
The bit `do_not_die_on_missing_tree` is used in revision.h to ensure the revision walker does not die when encountering a missing tree. This is currently exclusively set within `builtin/rev-list.c` to ensure the `--missing` option works with missing trees. In the upcoming commits, we will extend `--missing` to also support missing commits. So let's rename the bit to `do_not_die_on_missing_objects`, which is object type agnostic and can be used for both trees/commits. Signed-off-by: Karthik Nayak <karthik.188@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
922cc26e41
commit
ca556f4707
@ -298,7 +298,7 @@ static int cmd_reflog_expire(int argc, const char **argv, const char *prefix)
|
|||||||
struct rev_info revs;
|
struct rev_info revs;
|
||||||
|
|
||||||
repo_init_revisions(the_repository, &revs, prefix);
|
repo_init_revisions(the_repository, &revs, prefix);
|
||||||
revs.do_not_die_on_missing_tree = 1;
|
revs.do_not_die_on_missing_objects = 1;
|
||||||
revs.ignore_missing = 1;
|
revs.ignore_missing = 1;
|
||||||
revs.ignore_missing_links = 1;
|
revs.ignore_missing_links = 1;
|
||||||
if (verbose)
|
if (verbose)
|
||||||
|
@ -561,7 +561,7 @@ int cmd_rev_list(int argc, const char **argv, const char *prefix)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (arg_missing_action)
|
if (arg_missing_action)
|
||||||
revs.do_not_die_on_missing_tree = 1;
|
revs.do_not_die_on_missing_objects = 1;
|
||||||
|
|
||||||
argc = setup_revisions(argc, argv, &revs, &s_r_opt);
|
argc = setup_revisions(argc, argv, &revs, &s_r_opt);
|
||||||
|
|
||||||
|
@ -177,7 +177,7 @@ static void process_tree(struct traversal_context *ctx,
|
|||||||
is_promisor_object(&obj->oid))
|
is_promisor_object(&obj->oid))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (!revs->do_not_die_on_missing_tree)
|
if (!revs->do_not_die_on_missing_objects)
|
||||||
die("bad tree object %s", oid_to_hex(&obj->oid));
|
die("bad tree object %s", oid_to_hex(&obj->oid));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
17
revision.h
17
revision.h
@ -212,18 +212,19 @@ struct rev_info {
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* Blobs are shown without regard for their existence.
|
* Blobs are shown without regard for their existence.
|
||||||
* But not so for trees: unless exclude_promisor_objects
|
* But not so for trees/commits: unless exclude_promisor_objects
|
||||||
* is set and the tree in question is a promisor object;
|
* is set and the tree in question is a promisor object;
|
||||||
* OR ignore_missing_links is set, the revision walker
|
* OR ignore_missing_links is set, the revision walker
|
||||||
* dies with a "bad tree object HASH" message when
|
* dies with a "bad <type> object HASH" message when
|
||||||
* encountering a missing tree. For callers that can
|
* encountering a missing object. For callers that can
|
||||||
* handle missing trees and want them to be filterable
|
* handle missing trees/commits and want them to be filterable
|
||||||
* and showable, set this to true. The revision walker
|
* and showable, set this to true. The revision walker
|
||||||
* will filter and show such a missing tree as usual,
|
* will filter and show such a missing object as usual,
|
||||||
* but will not attempt to recurse into this tree
|
* but will not attempt to recurse into this tree/commit
|
||||||
* object.
|
* object. The revision walker will also set the MISSING
|
||||||
|
* flag for such objects.
|
||||||
*/
|
*/
|
||||||
do_not_die_on_missing_tree:1,
|
do_not_die_on_missing_objects:1,
|
||||||
|
|
||||||
/* for internal use only */
|
/* for internal use only */
|
||||||
exclude_promisor_objects:1;
|
exclude_promisor_objects:1;
|
||||||
|
Reference in New Issue
Block a user