]> git.ipfire.org Git - thirdparty/git.git/commit
column: fix parsing of the '--nl' option
authorSZEDER Gábor <szeder.dev@gmail.com>
Wed, 18 Aug 2021 09:24:56 +0000 (11:24 +0200)
committerJunio C Hamano <gitster@pobox.com>
Thu, 26 Aug 2021 21:36:27 +0000 (14:36 -0700)
commitc93ca46cf5d0b0cd22e357a6460fa84fd4633440
tree6ba2683c1b2f8aa4e0756370737b44393ca8f6f4
parent225bc32a989d7a22fa6addafd4ce7dcd04675dbf
column: fix parsing of the '--nl' option

'git column's '--nl' option can be used to specify a "string to be
printed at the end of each line" (quoting the man page), but this
option and its mandatory argument has been parsed as OPT_INTEGER since
the introduction of the command in 7e29b8254f (Add column layout
skeleton and git-column, 2012-04-21).  Consequently, any non-number
argument is rejected by parse-options, and any number other than 0
leads to segfault:

  $ printf "%s\n" one two |git column --mode=plain --nl=foo
  error: option `nl' expects a numerical value
  $ printf "%s\n" one two |git column --mode=plain --nl=42
  Segmentation fault (core dumped)
  $ printf "%s\n" one two |git column --mode=plain --nl=0
  one
  two

Parse this option as OPT_STRING.

Signed-off-by: SZEDER Gábor <szeder.dev@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/git-column.txt
builtin/column.c
t/t9002-column.sh