Jeff King <peff@xxxxxxxx> writes: > The number of variants of check_everything_connected has > grown over the years, so that the "real" function takes > several possibly-zero, possibly-NULL arguments. We hid the > complexity behind some wrapper functions, but this doesn't > scale well when we want to add new options. I was kind of embarrassed to admit that I wasn't even aware that things got this bad, so I took a look at the history to realize that "grown over the years" above is a bit misleading statement. It is not like many people over the years were doing something like this. There are only two commits that brought in this pattern with poor design taste. > Instead, let's add a struct to hold all of the optional > parameters. > ... > connected.c | 39 +++++++++++---------------------------- Yup, that is absolutely the right thing to do. Thanks. -- 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