Jiang Xin <worldhello.net@xxxxxxxxx> writes: > 2013/5/13 Matthieu Moy <Matthieu.Moy@xxxxxxxxxxxxxxx>: >> Jiang Xin <worldhello.net@xxxxxxxxx> writes: >> >>> * color.interactive.<slot>: Use customized color for interactive >>> git-clean output (like git add --interactive). <slot> may be >>> prompt, header, help or error. >> >> This should go to the documentation (a short summary is welcome in the >> commit messages in addition, but users won't read this...) >> >>> + if (!prefixcmp(var, "color.interactive.")) { >>> + int slot = parse_clean_color_slot(var, 18); >> >> For readability and maintainability: please use >> strlen("color.interactive."), not 18. > > Feel like conventional: > > git grep -C2 prefixcmp builtin/apply.c builtin/archive.c > builtin/branch.c builtin/checkout.c > > But maybe 18 characters are too long. ;-) Why does it even have to know where the prefix ends or how long the prefix is? Doesn't it suggest that perhaps the parse_clean_color_slot()'s external interface is misdesigned? In the other examples you showed, e.g. builtin/apply.c: if (!prefixcmp(buffer, "delta ")) { builtin/apply.c- patch_method = BINARY_DELTA_DEFLATED; builtin/apply.c- origlen = strtoul(buffer + 6, NULL, 10); we are calling external libraries that are designed to take a pointer to a character, but the parse-clean-color-slot knows that it is fed the name of a configuration variable and it knows the shape of its input far better than a generic function like strtoul(), no? -- 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