From: Bastian Dehn Date: Tue, 5 May 2026 17:13:55 +0000 (+0200) Subject: refactor config load X-Git-Tag: v1.1.30^2~7 X-Git-Url: https://gitweb.hhaalo.de/?a=commitdiff_plain;h=711eee2752f408536f4b23e8f22897f5992e56fc;p=sane-kds-s2000w-net.git refactor config load --- diff --git a/src/kds_s2000w_config.c b/src/kds_s2000w_config.c index af89bc7..b0d741f 100644 --- a/src/kds_s2000w_config.c +++ b/src/kds_s2000w_config.c @@ -18,22 +18,6 @@ program_config_t* _kds_s2000w_config_init() config->scanner_url = NULL; config->username = NULL; - - config->scanner_url = malloc(sizeof(char)); - if (config->scanner_url == NULL) { - kds_s2000w_config_free(config); - config = NULL; - return NULL; - } - - config->username = malloc(sizeof(char)); - if (config->username == NULL) { - kds_s2000w_config_free(config); - config = NULL; - return NULL; - } - *config->scanner_url = '\0'; - *config->username = '\0'; config->log_level = 0; config->heartbeat = 1; config->ssl_verify = 0; @@ -84,16 +68,13 @@ char* kds_s2000w_config_read(const char* filename) program_config_t* kds_s2000w_config_load(const char* config_string) { + if (config_string == NULL) + return NULL; + program_config_t* config = _kds_s2000w_config_init(); if (config == NULL) return NULL; - if (config_string == NULL) - return config; - - if (strlen(config_string) == 0) - return config; - cfg_opt_t opts[] = { CFG_STR(SCANNER_URL, "", CFGF_NONE), CFG_STR(USERNAME, "", CFGF_NONE), diff --git a/tests/kds_s2000w_read_config_tests.c b/tests/kds_s2000w_read_config_tests.c index 940f62d..54de828 100644 --- a/tests/kds_s2000w_read_config_tests.c +++ b/tests/kds_s2000w_read_config_tests.c @@ -30,14 +30,7 @@ void kds_s2000w_config_null_test() { program_config_t* config = kds_s2000w_config_load(NULL); - assert_non_null(config); - assert_string_equal(config->scanner_url, ""); - assert_string_equal(config->username, ""); - assert_int_equal(config->heartbeat, 1); - assert_int_equal(config->ssl_verify, 0); - - kds_s2000w_config_free(config); - config = NULL; + assert_null(config); } void kds_s2000w_config_read_empty_config_test() @@ -141,7 +134,7 @@ void kds_s2000w_config_profile_test() void kds_s2000w_config_load_no_mem_test() { - for (int16_t i = 0; i < 5; i++) { + for (int16_t i = 0; i < 3; i++) { _kds_s2000w_config_load_no_mem(i); } }