From 7b320516abf871eefe009ff6fe4fb86ed921fed9 Mon Sep 17 00:00:00 2001
From: Cyrille Bagard <nocbos@gmail.com>
Date: Fri, 1 Jan 2021 21:41:40 +0100
Subject: Fixed a hardcoded type confusion and a mistake with empty state
 definitions.

---
 src/glibext/configuration.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/glibext/configuration.c b/src/glibext/configuration.c
index 8746bfd..b4eb784 100644
--- a/src/glibext/configuration.c
+++ b/src/glibext/configuration.c
@@ -655,7 +655,9 @@ ConfigParamState g_config_param_get_state(GCfgParam *param)
         if (param->def_empty || param->cur_empty)
         {
             param->cached_state = (param->def_empty && param->cur_empty ? CPS_DEFAULT : CPS_CHANGED);
-            param->cached_state |= CPS_EMPTY;
+
+            if (param->cur_empty)
+                param->cached_state |= CPS_EMPTY;
 
             goto gcpgs_recached;
 
@@ -1131,7 +1133,7 @@ static void g_config_group_load(GCfgGroup *group, GGenConfig *config, xmlXPathCo
     {
         asprintf(&key, "%s.%s", group->root, NODE_FROM_PATH_OBJ(xpathObj, i)->name);
 
-        param = g_config_param_new(key, CPT_INTEGER, -1);
+        param = g_config_param_new_empty(key, group->type);
         _g_generic_config_add_param(config, param, false);
 
         free(key);
-- 
cgit v0.11.2-87-g4458