Johannes Schindelin <johannes.schinde...@gmx.de> writes:

>  
> +     if (starts_with(var, "receive.fsck.")) {
> +             if (fsck_severity.len)
> +                     strbuf_addch(&fsck_severity, ',');
> +             strbuf_addf(&fsck_severity, "%s=%s", var + 13, value);

Wouldn't it be safer to use skip_prefix() that lets you avoid the
hardcoded "var + 13" here?

> @@ -1470,8 +1478,13 @@ static const char *unpack(int err_fd, struct 
> shallow_info *si)
>               argv_array_pushl(&child.args, "unpack-objects", hdr_arg, NULL);
>               if (quiet)
>                       argv_array_push(&child.args, "-q");
> -             if (fsck_objects)
> -                     argv_array_push(&child.args, "--strict");
> +             if (fsck_objects) {
> +                     if (fsck_severity.len)
> +                             argv_array_pushf(&child.args, "--strict=%s",
> +                                     fsck_severity.buf);
> +                     else
> +                             argv_array_push(&child.args, "--strict");
> +             }
>               child.no_stdout = 1;
>               child.err = err_fd;
>               child.git_cmd = 1;
> @@ -1488,8 +1501,13 @@ static const char *unpack(int err_fd, struct 
> shallow_info *si)
>  
>               argv_array_pushl(&child.args, "index-pack",
>                                "--stdin", hdr_arg, keep_arg, NULL);
> -             if (fsck_objects)
> -                     argv_array_push(&child.args, "--strict");
> +             if (fsck_objects) {
> +                     if (fsck_severity.len)
> +                             argv_array_pushf(&child.args, "--strict=%s",
> +                                     fsck_severity.buf);
> +                     else
> +                             argv_array_push(&child.args, "--strict");
> +             }

Hmm.  The above two hunks look suspiciously similar.  Would it be
worth to give them a single helper function?

> diff --git a/builtin/unpack-objects.c b/builtin/unpack-objects.c
> index 6d17040..82f2d62 100644
> --- a/builtin/unpack-objects.c
> +++ b/builtin/unpack-objects.c
> @@ -530,6 +530,11 @@ int cmd_unpack_objects(int argc, const char **argv, 
> const char *prefix)
>                               strict = 1;
>                               continue;
>                       }
> +                     if (starts_with(arg, "--strict=")) {
> +                             strict = 1;
> +                             fsck_set_severity(&fsck_options, arg + 9);
> +                             continue;
> +                     }
>                       if (starts_with(arg, "--pack_header=")) {
>                               struct pack_header *hdr;
>                               char *c;
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to