From 7c992c000dd3847265886580a7ef7127be36c692 Mon Sep 17 00:00:00 2001 From: Christian Thaeter Date: Wed, 10 Sep 2008 15:16:40 +0200 Subject: [PATCH] config setters for number and word, thats it for now --- src/backend/config_typed.c | 26 ++++++++++++++++---- tests/22config_highlevel.tests | 6 +++-- tests/backend/test-config.c | 43 ++++++++++++++++++++++++++++++++++ 3 files changed, 68 insertions(+), 7 deletions(-) diff --git a/src/backend/config_typed.c b/src/backend/config_typed.c index 53c8abc09..ae490ff2b 100644 --- a/src/backend/config_typed.c +++ b/src/backend/config_typed.c @@ -91,8 +91,16 @@ LumieraConfigitem lumiera_config_number_set (const char* key, long long* value) { TRACE (config_typed); - UNIMPLEMENTED(); - return 0; + + LumieraConfigitem item = NULL; + + LUMIERA_WRLOCK_SECTION (config_typed, &lumiera_global_config->lock) + { + const char* fmt = "= %lld"; TODO ("use the config system (config.format*...) to deduce the desired format for this key"); + item = lumiera_config_set (key, lumiera_tmpbuf_snprintf (SIZE_MAX, fmt, *value)); + } + + return item; } @@ -239,7 +247,7 @@ scan_word (const char* in) char* end = ret; /* chop trailing blanks */ - while (*end != ' ' && *end != '\t') + while (*end && *end != ' ' && *end != '\t') ++end; *end++ = '\0'; @@ -274,8 +282,16 @@ LumieraConfigitem lumiera_config_word_set (const char* key, const char** value) { TRACE (config_typed); - UNIMPLEMENTED(); - return 0; + + LumieraConfigitem item = NULL; + + LUMIERA_WRLOCK_SECTION (config_typed, &lumiera_global_config->lock) + { + const char* fmt = "= %s"; TODO ("use the config system (config.format*...) to deduce the desired format for this key"); + item = lumiera_config_set (key, lumiera_tmpbuf_snprintf (SIZE_MAX, fmt, scan_word (*value))); + } + + return item; } diff --git a/tests/22config_highlevel.tests b/tests/22config_highlevel.tests index c8c175319..e0e4995c8 100644 --- a/tests/22config_highlevel.tests +++ b/tests/22config_highlevel.tests @@ -61,7 +61,8 @@ out: LUMIERA_ERROR_CONFIG_NO_ENTRY:no configuration entry END -PLANNED "number set" <