config: preserve scope in do_git_config_sequence
authorMatthew Rogers <mattr94@gmail.com>
Mon, 10 Feb 2020 00:30:56 +0000 (00:30 +0000)
committerJunio C Hamano <gitster@pobox.com>
Mon, 10 Feb 2020 18:39:04 +0000 (10:39 -0800)
commit5c105a842eae59a3271f5db861ef8d85de6bc2f8
tree80f29a121040d1335abbe7b71fc3dd4785443046
parent6766e41b8aae21927625adbb8cdc87804153639a
config: preserve scope in do_git_config_sequence

do_git_config_sequence operated under the assumption that it was correct
to set current_parsing_scope to CONFIG_SCOPE_UNKNOWN as part of the
cleanup it does after it finishes execution.  This is incorrect, as it
blows away the current_parsing_scope if do_git_config_sequence is called
recursively.  As such situations are rare (git config running with the
'--blob' option is one example) this has yet to cause a problem, but the
upcoming '--show-scope' option will experience issues in that case, lets
teach do_git_config_sequence to preserve the current_parsing_scope from
before it started execution.

Signed-off-by: Matthew Rogers <mattr94@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
config.c