attr: read core.attributesfile from git_default_core_config
authorJunio C Hamano <gitster@pobox.com>
Thu, 6 Oct 2011 18:22:24 +0000 (13:22 -0500)
committerJunio C Hamano <gitster@pobox.com>
Thu, 6 Oct 2011 20:54:32 +0000 (13:54 -0700)
commit64589a03a8ffb3eb4fb2ff8f416ff638a9aaa439
tree96db0b639a87af13e8a7091d6ef9c6940a82b7c7
parent0d0ff65cea5424a202510fa4e28a461d36032276
attr: read core.attributesfile from git_default_core_config

This code calls git_config from a helper function to parse the config entry
it is interested in.  Calling git_config in this way may cause a problem if
the helper function can be called after a previous call to git_config by
another function since the second call to git_config may reset some
variable to the value in the config file which was previously overridden.

The above is not a problem in this case since the function passed to
git_config only parses one config entry and the variable it sets is not
assigned outside of the parsing function.  But a programmer who desires
all of the standard config options to be parsed may be tempted to modify
git_attr_config() so that it falls back to git_default_config() and then it
_would_ be vulnerable to the above described behavior.

So, move the call to git_config up into the top-level cmd_* function and
move the responsibility for parsing core.attributesfile into the main
config file parser.

Which is only the logical thing to do ;-)

Signed-off-by: Brandon Casey <drafnel@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
attr.c
builtin/check-attr.c
cache.h
config.c
environment.c