From: Nguyễn Thái Ngọc Duy Date: Sat, 10 Nov 2018 05:48:55 +0000 (+0100) Subject: transport.c: remove implicit dependency on the_index X-Git-Tag: v2.21.0-rc0~131^2~15 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6c6d5d0776b5eb60dc206691fc1fde755e94da20;p=thirdparty%2Fgit.git transport.c: remove implicit dependency on the_index note, there's still another hidden dependency related to this: even though we pass a repo to transport_push() we still use is_bare_repository() which pretty much assumes the_repository (and some other global state). Signed-off-by: Nguyễn Thái Ngọc Duy Signed-off-by: Junio C Hamano --- diff --git a/builtin/push.c b/builtin/push.c index d09a42062c..efb3e38a8d 100644 --- a/builtin/push.c +++ b/builtin/push.c @@ -355,7 +355,8 @@ static int push_with_options(struct transport *transport, struct refspec *rs, if (verbosity > 0) fprintf(stderr, _("Pushing to %s\n"), transport->url); - err = transport_push(transport, rs, flags, &reject_reasons); + err = transport_push(the_repository, transport, + rs, flags, &reject_reasons); if (err != 0) { fprintf(stderr, "%s", push_get_color(PUSH_COLOR_ERROR)); error(_("failed to push some refs to '%s'"), transport->url); diff --git a/transport.c b/transport.c index 5a74b609ff..71f663743f 100644 --- a/transport.c +++ b/transport.c @@ -1105,7 +1105,8 @@ static int run_pre_push_hook(struct transport *transport, return ret; } -int transport_push(struct transport *transport, +int transport_push(struct repository *r, + struct transport *transport, struct refspec *rs, int flags, unsigned int *reject_reasons) { @@ -1172,7 +1173,7 @@ int transport_push(struct transport *transport, oid_array_append(&commits, &ref->new_oid); - if (!push_unpushed_submodules(the_repository, + if (!push_unpushed_submodules(r, &commits, transport->remote, rs, @@ -1197,7 +1198,7 @@ int transport_push(struct transport *transport, oid_array_append(&commits, &ref->new_oid); - if (find_unpushed_submodules(the_repository, + if (find_unpushed_submodules(r, &commits, transport->remote->name, &needs_pushing)) { diff --git a/transport.h b/transport.h index 9baeca2d7a..f2ee7c4f49 100644 --- a/transport.h +++ b/transport.h @@ -223,7 +223,8 @@ void transport_set_verbosity(struct transport *transport, int verbosity, #define REJECT_FETCH_FIRST 0x08 #define REJECT_NEEDS_FORCE 0x10 -int transport_push(struct transport *connection, +int transport_push(struct repository *repo, + struct transport *connection, struct refspec *rs, int flags, unsigned int * reject_reasons);