From patchwork Fri Apr 26 15:01:54 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Laurent Pinchart X-Patchwork-Id: 1113 Return-Path: Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id AA1A960EA8 for ; Fri, 26 Apr 2019 17:02:11 +0200 (CEST) Received: from pendragon.station (net-37-182-44-227.cust.vodafonedsl.it [37.182.44.227]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 3C8F25F for ; Fri, 26 Apr 2019 17:02:11 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1556290931; bh=CjVvA36ESYJORGQ4okkGYCMtDeng9tzeJjBZXbO7KH4=; h=From:To:Subject:Date:In-Reply-To:References:From; b=gpt5EeTSvYGaJEclCGn9GWwUPIcqXAeQW8pJOfKDLYzmaZfEYm0z3ZLGTuprDdQDK ZKc23nYPPFndwvFEQg+1jkj9zx3xzvQ5C2ofoy2p8EVtSXPU4vtnqac+0iUXbf+b4s AOA1+ppXBGjk1w/XQpxb5LnorFxQ0tFX6t1lW5KA= From: Laurent Pinchart To: libcamera-devel@lists.libcamera.org Date: Fri, 26 Apr 2019 18:01:54 +0300 Message-Id: <20190426150155.18652-8-laurent.pinchart@ideasonboard.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190426150155.18652-1-laurent.pinchart@ideasonboard.com> References: <20190426150155.18652-1-laurent.pinchart@ideasonboard.com> MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH 7/8] cam: options: Don't initialise variable-length arrays X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 26 Apr 2019 15:02:13 -0000 According to clang, variable-length arrays can't be initialised. Don't do so, and explicitly set the last element to 0 instead. Signed-off-by: Laurent Pinchart Reviewed-by: Kieran Bingham --- src/cam/options.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/cam/options.cpp b/src/cam/options.cpp index 172d40f76a05..b80d361eaaf4 100644 --- a/src/cam/options.cpp +++ b/src/cam/options.cpp @@ -382,8 +382,8 @@ OptionsParser::Options OptionsParser::parse(int argc, char **argv) * Allocate short and long options arrays large enough to contain all * options. */ - char shortOptions[options_.size() * 3 + 2] = {}; - struct option longOptions[options_.size() + 1] = {}; + char shortOptions[options_.size() * 3 + 2]; + struct option longOptions[options_.size() + 1]; unsigned int ids = 0; unsigned int idl = 0; @@ -419,6 +419,9 @@ OptionsParser::Options OptionsParser::parse(int argc, char **argv) } } + shortOptions[ids] = '\0'; + memset(&longOptions[idl], 0, sizeof(longOptions[idl])); + opterr = 0; while (true) {