]> gitweb.hhaalo.de Git - sane-kds-s2000w-net.git/commitdiff
fix load config no mem
authorBastian Dehn <hhaalo@arcor.de>
Sun, 9 Nov 2025 06:53:53 +0000 (07:53 +0100)
committerBastian Dehn <hhaalo@arcor.de>
Sun, 9 Nov 2025 06:53:53 +0000 (07:53 +0100)
src/kds_s2000w_config.c
tests/kds_s2000w_read_config_tests.c

index 9fe937e2c43afa5bba8518a6c8e1c0f25df9b0a2..14d0c67671e25855e266ade415ee35b2cf3b39ed 100644 (file)
@@ -107,10 +107,24 @@ program_config_t* kds_s2000w_config_load(const char* config_string)
        free(config->scanner_url);
        config->scanner_url = NULL;
        config->scanner_url = _kds_s2000w_config_copy_config_string(cfg, SCANNER_URL);
+       if (config->scanner_url == NULL) {
+               cfg_free(cfg);
+               cfg = NULL;
+               kds_s2000w_config_free(config);
+               config = NULL;
+               return NULL;
+       }
 
        free(config->username);
        config->username = NULL;
        config->username = _kds_s2000w_config_copy_config_string(cfg, USERNAME);
+       if (config->username == NULL) {
+               cfg_free(cfg);
+               cfg = NULL;
+               kds_s2000w_config_free(config);
+               config = NULL;
+               return NULL;
+       }
 
        config->log_level = cfg_getint(cfg, DEFAULT_LOG_LEVEL);
        config->heartbeat = cfg_getint(cfg, HEARTBEAT_SECONDS);
index 0dd07b1ed1d7dff722489df073f7427885a5de0e..ffe21b3eeb7f279cd84feef86803d51eff190859 100644 (file)
@@ -141,7 +141,7 @@ void kds_s2000w_config_profile_test()
 
 void kds_s2000w_config_load_no_mem_test()
 {
-       for (int16_t i = 0; i < 3; i++) {
+       for (int16_t i = 0; i < 5; i++) {
                _kds_s2000w_config_load_no_mem(i);
        }
 }