summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorCraig Scott <craig.scott@crascit.com>2019-10-28 10:54:58 (GMT)
committerCraig Scott <craig.scott@crascit.com>2019-10-28 10:55:20 (GMT)
commitc79e9d8c210fd928bfb39a57634094ab74f8d120 (patch)
treefbcc3813ef20d8318348228e3bc0007ad33e4f8e /Source
parentf4749489fdcc252e73f009e69dadc9480e84f611 (diff)
parent82cdb26c93b595e3791818cc8f24dfc6935eb8a8 (diff)
downloadCMake-c79e9d8c210fd928bfb39a57634094ab74f8d120.zip
CMake-c79e9d8c210fd928bfb39a57634094ab74f8d120.tar.gz
CMake-c79e9d8c210fd928bfb39a57634094ab74f8d120.tar.bz2
Merge branch 'project-version-buffer-overflow' into release-3.16
Merge-request: !3948
Diffstat (limited to 'Source')
-rw-r--r--Source/cmProjectCommand.cxx3
1 files changed, 2 insertions, 1 deletions
diff --git a/Source/cmProjectCommand.cxx b/Source/cmProjectCommand.cxx
index eb59b4f..7bb5209 100644
--- a/Source/cmProjectCommand.cxx
+++ b/Source/cmProjectCommand.cxx
@@ -224,7 +224,8 @@ bool cmProjectCommand(std::vector<std::string> const& args,
std::array<std::string, MAX_VERSION_COMPONENTS> version_components;
if (cmp0096 == cmPolicies::OLD || cmp0096 == cmPolicies::WARN) {
- char vb[MAX_VERSION_COMPONENTS][std::numeric_limits<unsigned>::digits10];
+ char vb[MAX_VERSION_COMPONENTS]
+ [std::numeric_limits<unsigned>::digits10 + 2];
unsigned v[MAX_VERSION_COMPONENTS] = { 0, 0, 0, 0 };
const int vc = std::sscanf(version.c_str(), "%u.%u.%u.%u", &v[0], &v[1],
&v[2], &v[3]);