Re: [PATCH v5 3/3] git: submodule honor -c credential.* from command line
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Feb 29, 2016, 18:20 UTC
- Message-ID
- <xmqqmvqjcr95.fsf@gitster.mtv.corp.google.com>
- In-Reply-To
- <1456532000-22971-4-git-send-email-jacob.e.keller@intel.com>
Jacob Keller <jacob.e.keller@intel.com> writes:
Show 10 quoted lines
> +static int sanitize_submodule_config(const char *var, const char *value, void *data)
> +{
> + struct strbuf quoted = STRBUF_INIT;
> + struct strbuf *out = data;
> +
> + if (submodule_config_ok(var)) {
> + if (out->len)
> + strbuf_addch(out, ' ');
> +
> + sq_quotef(out, "%s=%s", var, value);Can a configuration variable that comes from the original command line be a boolean true that is spelled without "=true", i.e. can value be NULL here?
Show 18 quoted lines
> + }
> +
> + strbuf_release("ed);
> +
> + return 0;
> +}
> +
> +static void prepare_submodule_repo_env(struct argv_array *out)
> +{
> + const char * const *var;
> +
> + for (var = local_repo_env; *var; var++) {
> + if (!strcmp(*var, CONFIG_DATA_ENVIRONMENT)) {
> + struct strbuf sanitized_config = STRBUF_INIT;
> + git_config_from_parameters(sanitize_submodule_config,
> + &sanitized_config);
> + argv_array_pushf(out, "%s=%s", *var, sanitized_config.buf);
> + strbuf_release(&sanitized_config);