1
0
mirror of https://github.com/git/git.git synced 2024-09-28 20:51:42 +02:00

versioncmp.c: refactor config reading next commit

Refactor the reading of the versionSort.suffix and
versionSort.prereleaseSuffix configuration variables to stay within
the bounds of our CodingGuidelines when it comes to line length, and
to avoid repeating ourselves.

Renaming "deprecated_prereleases" to "oldl" doesn't help us to avoid
line wrapping now, but it will in a subsequent commit.

Let's also split out the names of the config variables into variables
of our own, and refactor the nested if/else to avoid indenting it, and
the existing bracing style issue.

This all helps with the subsequent commit, where we'll need to start
checking different git_config_get_value_multi() return value. See
c026557a373 (versioncmp: generalize version sort suffix reordering,
2016-12-08) for the original implementation of most of this.

Moving the "initialized = 1" assignment allows us to move some of this
to the variable declarations in the subsequent commit.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Ævar Arnfjörð Bjarmason 2023-03-28 16:04:23 +02:00 committed by Junio C Hamano
parent b83efcecaf
commit f6f348a6d5

@ -160,15 +160,18 @@ int versioncmp(const char *s1, const char *s2)
}
if (!initialized) {
const struct string_list *deprecated_prereleases;
const char *const newk = "versionsort.suffix";
const char *const oldk = "versionsort.prereleasesuffix";
const struct string_list *oldl;
prereleases = git_config_get_value_multi(newk);
oldl = git_config_get_value_multi(oldk);
if (prereleases && oldl)
warning("ignoring %s because %s is set", oldk, newk);
else if (!prereleases)
prereleases = oldl;
initialized = 1;
prereleases = git_config_get_value_multi("versionsort.suffix");
deprecated_prereleases = git_config_get_value_multi("versionsort.prereleasesuffix");
if (prereleases) {
if (deprecated_prereleases)
warning("ignoring versionsort.prereleasesuffix because versionsort.suffix is set");
} else
prereleases = deprecated_prereleases;
}
if (prereleases && swap_prereleases(s1, s2, (const char *) p1 - s1 - 1,
&diff))