Re: [PATCH 1/2] Teach Git how to parse standard power of 2 suffixes.
"Shawn O. Pearce" <spearce@spearce.org> writes:
Show 13 quoted lines
> diff --git a/Documentation/git-repo-config.txt b/Documentation/git-repo-config.txt
> index b379ec5..c55a8ba 100644
> --- a/Documentation/git-repo-config.txt
> +++ b/Documentation/git-repo-config.txt
> @@ -87,7 +87,10 @@ OPTIONS
> git-repo-config will ensure that the output is "true" or "false"
>
> --int::
> - git-repo-config will ensure that the output is a simple decimal number
> + git-repo-config will ensure that the output is a simple
> + decimal number. An optional value suffix of 'k', 'm', or 'g'
> + in the config file will cause the value to be multiplied
> + by 1024, 1048576, or 1073741824 prior to output.
Thanks. I think this is applicable on top of 'master'.
Show 11 quoted lines
> ENVIRONMENT
> diff --git a/config.c b/config.c
> index 2e0d5a8..83ce9e1 100644
> --- a/config.c
> +++ b/config.c
> @@ -236,8 +236,16 @@ int git_config_int(const char *name, const char *value)
> if (value && *value) {
> char *end;
> int val = strtol(value, &end, 0);
> + while (isspace(*end))
> + end++;Why? Are you allowing "1024 k"? Do we want to?
Show 13 quoted lines
> if (!*end)
> return val;
> + if (!strcasecmp(end, "k"))
> + return val * 1024;
> + if (!strcasecmp(end, "m"))
> + return val * 1024 * 1024;
> + if (!strcasecmp(end, "g"))
> + return val * 1024 * 1024 * 1024;
> }
> die("bad config value for '%s' in %s", name, config_file_name);
> }
> --
> 1.5.0.rc0.g6bb1