[PATCH v5 0/7] grep: simplify & delete "init" & "config" code
- From
Ævar Arnfjörð Bjarmason <avarab@gmail.com>
- Date
- Dec 22, 2021, 02:58 UTC
- Message-ID
- <cover-v5-0.7-00000000000-20211222T025214Z-avarab@gmail.com>
- In-Reply-To
- <cover-v4-0.7-00000000000-20211203T101348Z-avarab@gmail.com>
A simplification and code deletion of the overly complex setup for the grep API, no behavior changes. For v4 see: https://lore.kernel.org/git/cover-v4-0.7-00000000000-20211203T101348Z-avarab@gmail.com/
This re-roll is rebased on the latest push-out to "master", now-landed topic had a minor conflict with it in git.c.
Ævar Arnfjörð Bjarmason (7): grep.h: remove unused "regex_t regexp" from grep_opt log tests: check if grep_config() is called by "log"-like cmds grep tests: add missing "grep.patternType" config test built-ins: trust the "prefix" from run_builtin() grep.c: don't pass along NULL callback value grep API: call grep_config() after grep_init() grep: simplify config parsing and option parsing
builtin/grep.c | 27 +++++----- builtin/log.c | 13 ++++- builtin/ls-tree.c | 2 +- git.c | 1 + grep.c | 124 ++++++++-------------------------------------- grep.h | 33 ++++++++---- revision.c | 4 +- t/t4202-log.sh | 24 +++++++++ t/t7810-grep.sh | 19 +++++++ 9 files changed, 116 insertions(+), 131 deletions(-)
Range-diff against v4:
1: d7d232b2b52 = 1: b6a3e0e2e08 grep.h: remove unused "regex_t regexp" from grep_opt
2: f853d669682 = 2: c0d77b2683f log tests: check if grep_config() is called by "log"-like cmds
3: a97b7de3a3c = 3: f02f246aa23 grep tests: add missing "grep.patternType" config test
4: f7d995a5a80 ! 4: a542a352eab built-ins: trust the "prefix" from run_builtin()
@@ builtin/ls-tree.c: int cmd_ls_tree(int argc, const char **argv, const char *pref
## git.c ##
@@ git.c: static int run_builtin(struct cmd_struct *p, int argc, const char **argv)
- int nongit_ok;
- prefix = setup_git_directory_gently(&nongit_ok);
- }
-+ assert(!prefix || *prefix);
- precompose_argv_prefix(argc, argv, NULL);
- if (use_pager == -1 && p->option & (RUN_SETUP | RUN_SETUP_GENTLY) &&
- !(p->option & DELAY_PAGER_CONFIG))
+ } else {
+ prefix = NULL;
+ }
++ assert(!prefix || *prefix);
+ precompose_argv_prefix(argc, argv, NULL);
+ if (use_pager == -1 && run_setup &&
+ !(p->option & DELAY_PAGER_CONFIG))
## grep.c ##
@@ grep.c: int grep_config(const char *var, const char *value, void *cb)
5: ab1685f0dad = 5: a33b00a247e grep.c: don't pass along NULL callback value
6: 8ffa22df8c7 = 6: 92b1c3958fa grep API: call grep_config() after grep_init()
7: efbd1c50b43 = 7: 63de643ebc2 grep: simplify config parsing and option parsing-- 2.34.1.1146.gb52885e7c44