From 9b93c30d30e9f8113aef5b30951a21e3c494e81c Mon Sep 17 00:00:00 2001 From: Tim Kientzle Date: Wed, 1 Aug 2007 03:15:35 +0000 Subject: Fix for PR bin/115033. This corrects a crash when long options are specified with the "-W option=arg" syntax and the '=' is omitted. MFC after: 3 days Approved by: re (rwatson) --- usr.bin/tar/bsdtar.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'usr.bin/tar') diff --git a/usr.bin/tar/bsdtar.c b/usr.bin/tar/bsdtar.c index 5ada5518ca68..03c64182a66c 100644 --- a/usr.bin/tar/bsdtar.c +++ b/usr.bin/tar/bsdtar.c @@ -911,6 +911,10 @@ bsdtar_getopt(struct bsdtar *bsdtar, const char *optstring, "(matches both %s and %s)", p, (*poption)->name, option->name); + if ((*poption)->has_arg == required_argument + && optarg == NULL) + bsdtar_errc(bsdtar, 1, 0, + "Option \"%s\" requires argument", p); } else { opt = '?'; /* TODO: Set up a fake 'struct option' for -- cgit v1.2.3