summaryrefslogtreecommitdiff
path: root/src/config/ConfigManager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/config/ConfigManager.cpp')
-rw-r--r--src/config/ConfigManager.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/config/ConfigManager.cpp b/src/config/ConfigManager.cpp
index 3e75f2ab..9277b89b 100644
--- a/src/config/ConfigManager.cpp
+++ b/src/config/ConfigManager.cpp
@@ -2196,8 +2196,14 @@ bool CMonitorRuleParser::parsePosition(const std::string& value, bool isFirst) {
m_rule.offset = Vector2D(-INT32_MAX, -INT32_MAX);
return false;
} else {
- m_rule.offset.x = stoi(value.substr(0, value.find_first_of('x')));
- m_rule.offset.y = stoi(value.substr(value.find_first_of('x') + 1));
+ try {
+ m_rule.offset.x = stoi(value.substr(0, value.find_first_of('x')));
+ m_rule.offset.y = stoi(value.substr(value.find_first_of('x') + 1));
+ } catch (...) {
+ m_error += "invalid offset ";
+ m_rule.offset = Vector2D(-INT32_MAX, -INT32_MAX);
+ return false;
+ }
}
}
return true;