[clang] 52b03aa - [clang-format][PR46043] Parse git config w/ implicit values
Jake Merdich via cfe-commits
cfe-commits at lists.llvm.org
Sun May 24 17:36:55 PDT 2020
Author: Jake Merdich
Date: 2020-05-24T20:32:54-04:00
New Revision: 52b03aaa22f650bbd36ceb3bdae4699dae71b2b8
URL: https://github.com/llvm/llvm-project/commit/52b03aaa22f650bbd36ceb3bdae4699dae71b2b8
DIFF: https://github.com/llvm/llvm-project/commit/52b03aaa22f650bbd36ceb3bdae4699dae71b2b8.diff
LOG: [clang-format][PR46043] Parse git config w/ implicit values
Summary:
https://bugs.llvm.org/show_bug.cgi?id=46043
Git's config is generally of the format 'key=val', but a setting
'key=true' can be written as just 'key'. The git-clang-format script
expects a value and crashes in this case; this change handles implicit
'true' values in the script.
Reviewers: MyDeveloperDay, krasimir, sammccall
Subscribers: cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D80486
Added:
Modified:
clang/tools/clang-format/git-clang-format
Removed:
################################################################################
diff --git a/clang/tools/clang-format/git-clang-format b/clang/tools/clang-format/git-clang-format
index abbe3b7b97c6..f3cd585e7f4a 100755
--- a/clang/tools/clang-format/git-clang-format
+++ b/clang/tools/clang-format/git-clang-format
@@ -192,7 +192,12 @@ def load_git_config(non_string_options=None):
out = {}
for entry in run('git', 'config', '--list', '--null').split('\0'):
if entry:
- name, value = entry.split('\n', 1)
+ if '\n' in entry:
+ name, value = entry.split('\n', 1)
+ else:
+ # A setting with no '=' ('\n' with --null) is implicitly 'true'
+ name = entry
+ value = 'true'
if name in non_string_options:
value = run('git', 'config', non_string_options[name], name)
out[name] = value
More information about the cfe-commits
mailing list