On Tue, May 05, 2015 at 03:48:29PM -0400, Eric Sunshine wrote: > > Yeah, it's just that it goes in the opposite direction I was trying for, > > which is to have as little code as possible in the wrapper functions (in > > fact, I think after my changes you could even bump the read_config() > > call into remote_get_1; before my changes, it depended on the pushremote > > config being set before the call). > > I also noticed that read_config() could be moved into remote_get_1(). > In fact, with that change, then the wrappers really do collapse nicely > to 1-liners, so the "clever" function pointer approach probably is > cleaner; and it's nicely generalized over the previous round with the > boolean argument to remote_get_1(). I ended up with this patch, which will go right after the one we're discussing: -- >8 -- Subject: remote.c: hoist read_config into remote_get_1 Before the previous commit, we had to make sure that read_config() was called before entering remote_get_1, because we needed to pass pushremote_name by value. But now that we pass a function, we can let remote_get_1 handle loading the config itself, turning our wrappers into true one-liners. Signed-off-by: Jeff King <peff@xxxxxxxx> --- remote.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/remote.c b/remote.c index a91d063..e6b29b3 100644 --- a/remote.c +++ b/remote.c @@ -718,6 +718,8 @@ static struct remote *remote_get_1(const char *name, struct remote *ret; int name_given = 0; + read_config(); + if (name) name_given = 1; else @@ -741,13 +743,11 @@ static struct remote *remote_get_1(const char *name, struct remote *remote_get(const char *name) { - read_config(); return remote_get_1(name, remote_for_branch); } struct remote *pushremote_get(const char *name) { - read_config(); return remote_get_1(name, pushremote_for_branch); } -- 2.4.0.488.gf55b16a -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html