aboutsummaryrefslogtreecommitdiffstats
path: root/src/ConfigData.cxx
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/ConfigData.cxx21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/ConfigData.cxx b/src/ConfigData.cxx
index 395d768f6..9712eef3e 100644
--- a/src/ConfigData.cxx
+++ b/src/ConfigData.cxx
@@ -29,6 +29,17 @@
#include <string.h>
#include <stdlib.h>
+int
+block_param::GetIntValue() const
+{
+ char *endptr;
+ long value2 = strtol(value.c_str(), &endptr, 0);
+ if (*endptr != 0)
+ FormatFatalError("Not a valid number in line %i", line);
+
+ return value2;
+}
+
unsigned
block_param::GetUnsignedValue() const
{
@@ -120,6 +131,16 @@ config_param::GetBlockPath(const char *name, Error &error) const
return GetBlockPath(name, nullptr, error);
}
+int
+config_param::GetBlockValue(const char *name, int default_value) const
+{
+ const block_param *bp = GetBlockParam(name);
+ if (bp == nullptr)
+ return default_value;
+
+ return bp->GetIntValue();
+}
+
unsigned
config_param::GetBlockValue(const char *name, unsigned default_value) const
{