diff options
author | Max Kellermann <max@duempel.org> | 2013-01-30 22:37:17 +0100 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2013-01-30 22:39:24 +0100 |
commit | 378ebad1c8d7079b41319600f13c1c884d6c693a (patch) | |
tree | f65564ce3a0fffde7fd0bdbf1c9040de3a15041e /src/ConfigData.hxx | |
parent | e44e0fab9f0851d5a369778923c03701e31b9e79 (diff) |
ConfigData: use simple linked list instead of GSList
Diffstat (limited to 'src/ConfigData.hxx')
-rw-r--r-- | src/ConfigData.hxx | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/ConfigData.hxx b/src/ConfigData.hxx index 053cf3b3..f3e661b2 100644 --- a/src/ConfigData.hxx +++ b/src/ConfigData.hxx @@ -25,7 +25,6 @@ #include "gcc.h" #ifdef __cplusplus -#include <glib.h> #include <string> #include <array> #include <vector> @@ -54,6 +53,12 @@ struct block_param { #endif struct config_param { + /** + * The next config_param with the same name. The destructor + * deletes the whole chain. + */ + struct config_param *next; + char *value; unsigned int line; @@ -67,7 +72,7 @@ struct config_param { bool used; config_param(int _line=-1) - :value(nullptr), line(_line), used(false) {} + :next(nullptr), value(nullptr), line(_line), used(false) {} gcc_nonnull_all config_param(const char *_value, int _line=-1); @@ -92,7 +97,7 @@ struct config_param { #ifdef __cplusplus struct ConfigData { - std::array<GSList *, std::size_t(CONF_MAX)> params; + std::array<config_param *, std::size_t(CONF_MAX)> params; }; #endif |