diff options
author | Ben McMorran <ben.mcmorran@gmail.com> | 2020-09-18 06:40:08 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2020-09-18 13:54:58 (GMT) |
commit | 0412b55b838fd337dfa510db1b9be3a44f4f7de2 (patch) | |
tree | 2be090166f847a31527e62d65f5598927e8f1ad9 /Source | |
parent | ac487f870b8c1117fa09782c43ed88f737c13fdc (diff) | |
download | CMake-0412b55b838fd337dfa510db1b9be3a44f4f7de2.zip CMake-0412b55b838fd337dfa510db1b9be3a44f4f7de2.tar.gz CMake-0412b55b838fd337dfa510db1b9be3a44f4f7de2.tar.bz2 |
foreach: Fix crash parsing integer out of range
Diffstat (limited to 'Source')
-rw-r--r-- | Source/cmForEachCommand.cxx | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/Source/cmForEachCommand.cxx b/Source/cmForEachCommand.cxx index 3b82e0a..c68b785 100644 --- a/Source/cmForEachCommand.cxx +++ b/Source/cmForEachCommand.cxx @@ -365,6 +365,12 @@ bool TryParseInteger(cmExecutionStatus& status, const std::string& str, int& i) status.SetError(e.str()); cmSystemTools::SetFatalErrorOccured(); return false; + } catch (std::out_of_range&) { + std::ostringstream e; + e << "Integer out of range: '" << str << "'"; + status.SetError(e.str()); + cmSystemTools::SetFatalErrorOccured(); + return false; } return true; |