summaryrefslogtreecommitdiffstats
path: root/scripts/kernel-doc
diff options
context:
space:
mode:
authorAkira Yokosawa <akiyks@gmail.com>2022-02-24 22:02:46 +0900
committerJonathan Corbet <corbet@lwn.net>2022-02-24 12:13:19 -0700
commite334f873eb4e1638dd0b45200d2d8838a13b0cac (patch)
tree1aaf4c2882e972a6a9a9fd5b6f128ad985322f4c /scripts/kernel-doc
parent2b306ecaf57b2b5004dcb671a46ef24a1c369db2 (diff)
downloadlinux-stable-e334f873eb4e1638dd0b45200d2d8838a13b0cac.tar.gz
linux-stable-e334f873eb4e1638dd0b45200d2d8838a13b0cac.tar.bz2
linux-stable-e334f873eb4e1638dd0b45200d2d8838a13b0cac.zip
docs: scripts/kernel-doc: Detect absence of FILE arg
Currently, when there is no FILE argument following a switch such as -man, -rst, or -none, kernel-doc exits with a warning from perl (long msg folded): Use of uninitialized value $ARGV[0] in pattern match (m//) at ./scripts/kernel-doc line 438. , which is unhelpful. Improve the behavior by adding a check at the bottom of parsing loop. If the argument is absent, display help text and exit with the code of 1 (via usage()). Signed-off-by: Akira Yokosawa <akiyks@gmail.com> Cc: Randy Dunlap <rdunlap@infradead.org> Link: https://lore.kernel.org/r/7b136049-a3ba-0eb5-8717-364d773ff914@gmail.com [jc: reworked to fix conflict with pod patches] Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Diffstat (limited to 'scripts/kernel-doc')
-rwxr-xr-xscripts/kernel-doc25
1 files changed, 17 insertions, 8 deletions
diff --git a/scripts/kernel-doc b/scripts/kernel-doc
index f06f68f3c3d9..9c084a2ba3b0 100755
--- a/scripts/kernel-doc
+++ b/scripts/kernel-doc
@@ -343,14 +343,23 @@ while ($ARGV[0] =~ m/^--?(.*)/) {
die "Sphinx version should either major.minor or major.minor.patch format\n";
}
} else {
- # Unknown argument
- pod2usage(
- -message => "Argument unknown!\n",
- -exitval => 1,
- -verbose => 99,
- -sections => 'SYNOPSIS',
- -output => \*STDERR,
- );
+ # Unknown argument
+ pod2usage(
+ -message => "Argument unknown!\n",
+ -exitval => 1,
+ -verbose => 99,
+ -sections => 'SYNOPSIS',
+ -output => \*STDERR,
+ );
+ }
+ if ($#ARGV < 0){
+ pod2usage(
+ -message => "FILE argument missing\n",
+ -exitval => 1,
+ -verbose => 99,
+ -sections => 'SYNOPSIS',
+ -output => \*STDERR,
+ );
}
}