Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.kernel.org/pub/scm/git/git.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/help.c
diff options
context:
space:
mode:
authorÆvar Arnfjörð Bjarmason <avarab@gmail.com>2022-08-04 19:28:31 +0300
committerJunio C Hamano <gitster@pobox.com>2022-08-05 00:12:23 +0300
commit936b8eb6c83fa2773b489dc365ab0cce47ba83f3 (patch)
treeba0f821bdd33b4a0ff9b1871e6f81a0933a3163e /help.c
parent2f8b3ea662269e5f8e05228eb7a816606559ca23 (diff)
help.c: remove common category behavior from drop_prefix() behavior
Change the behavior of the "git" prefix stripping for CAT_guide so that we don't try to strip the "git-" prefix in that case. We should be stripping either "git" or "git-" depending on the category. This change makes it easier to add extra "category" conditions in subsequent commits. Before this we'd in principle strip a "git-" prefix from a "guide" in command-list.txt, in practice we have no such entry there. As we don't have any entry that looks like "git-foo" in command-list.txt this changes nothing in practice, but it makes the intent of the code clearer. In that hypothetical case we'd now strip it down to "-foo", not "foo". When this code was added in cfb22a02ab5 (help: use command-list.h for common command list, 2018-05-10) the only entries in command-list.txt that didn't begin with "git-" were "gitweb" and "gitk". Then when the "guides" special-case was added in 1b81d8cb19d (help: use command-list.txt for the source of guides, 2018-05-20) we had the various "git" (not "git-") prefixed "guide" entries, which the "CAT_guide" case handles. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'help.c')
-rw-r--r--help.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/help.c b/help.c
index 7e594d291b..8a09f18a3d 100644
--- a/help.c
+++ b/help.c
@@ -44,16 +44,17 @@ static struct category_description main_categories[] = {
static const char *drop_prefix(const char *name, uint32_t category)
{
const char *new_name;
- const char *prefix = NULL;
+ const char *prefix;
- if (skip_prefix(name, "git-", &new_name))
- return new_name;
switch (category) {
case CAT_guide:
prefix = "git";
break;
+ default:
+ prefix = "git-";
+ break;
}
- if (prefix && skip_prefix(name, prefix, &new_name))
+ if (skip_prefix(name, prefix, &new_name))
return new_name;
return name;