Skip to content

Commit

Permalink
checkkconfigsymbols.py: Forbid passing 'HEAD' to --commit
Browse files Browse the repository at this point in the history
As opposed to the --diff option, --commit can get ref names instead of
commit hashes.

When using the --commit option, the script resets the working directory
to the commit before the given ref, by adding '~' to the end of the ref.

However, the 'HEAD' ref is relative, and so when the working directory
is reset to 'HEAD~', 'HEAD' points to what was 'HEAD~'. Then when the
script resets to 'HEAD' it actually stays in the same commit. In this
case, the script won't report any cases because there is no diff between
the cases of the two refs.

Prevent the user from using HEAD refs.

A better solution might be to resolve the refs before doing the
reset, but for now just disallow such refs.

Signed-off-by: Ariel Marcovitch <[email protected]>
Signed-off-by: Masahiro Yamada <[email protected]>
  • Loading branch information
arielmarco-hz authored and masahir0y committed Sep 19, 2021
1 parent 6880fa6 commit d62d5ae
Showing 1 changed file with 3 additions and 0 deletions.
3 changes: 3 additions & 0 deletions scripts/checkkconfigsymbols.py
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,9 @@ def parse_options():
"continue.")

if args.commit:
if args.commit.startswith('HEAD'):
sys.exit("The --commit option can't use the HEAD ref")

args.find = False

if args.ignore:
Expand Down

0 comments on commit d62d5ae

Please sign in to comment.