diff options
author | Elijah Newren <newren@gmail.com> | 2021-05-20 06:09:31 +0000 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2021-05-20 15:40:39 +0900 |
commit | caba91c373127a316b5442a6aac7080fee9bd624 (patch) | |
tree | 7204871b5bc1609ad627956efb3ffc52629b84da | |
parent | Documentation/technical: describe remembering renames optimization (diff) | |
download | tgif-caba91c373127a316b5442a6aac7080fee9bd624.tar.xz |
fast-rebase: change assert() to BUG()
assert() can succinctly document expectations for the code, and do so in
a way that may be useful to future folks trying to refactor the code and
change basic assumptions; it allows them to more quickly find some
places where their violations of previous assumptions trips things up.
Unfortunately, assert() can surround a function call with important
side-effects, which is a huge mistake since some users will compile with
assertions disabled. I've had to debug such mistakes before in other
codebases, so I should know better. Luckily, this was only in test
code, but it's still very embarrassing. Change an assert() to an if
(...) BUG (...).
Signed-off-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | t/helper/test-fast-rebase.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/t/helper/test-fast-rebase.c b/t/helper/test-fast-rebase.c index 373212256a..39fb7f41e8 100644 --- a/t/helper/test-fast-rebase.c +++ b/t/helper/test-fast-rebase.c @@ -124,7 +124,8 @@ int cmd__fast_rebase(int argc, const char **argv) assert(oideq(&onto->object.oid, &head)); hold_locked_index(&lock, LOCK_DIE_ON_ERROR); - assert(repo_read_index(the_repository) >= 0); + if (repo_read_index(the_repository) < 0) + BUG("Could not read index"); repo_init_revisions(the_repository, &revs, NULL); revs.verbose_header = 1; |