summaryrefslogtreecommitdiffstats
path: root/scripts/kernel-doc
diff options
context:
space:
mode:
authorAkira Yokosawa <akiyks@gmail.com>2022-02-24 14:02:46 +0100
committerJonathan Corbet <corbet@lwn.net>2022-02-24 20:13:19 +0100
commite334f873eb4e1638dd0b45200d2d8838a13b0cac (patch)
tree1aaf4c2882e972a6a9a9fd5b6f128ad985322f4c /scripts/kernel-doc
parentscripts: kernel-doc: Refresh the copyright lines (diff)
downloadlinux-e334f873eb4e1638dd0b45200d2d8838a13b0cac.tar.xz
linux-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,
+ );
}
}