From 5ca73ca37c7f0b629090d8243f637ca865cf48f8 Mon Sep 17 00:00:00 2001 From: Bastian Dehn Date: Fri, 31 Oct 2025 17:48:23 +0100 Subject: [PATCH] test init option descriptor for no mem --- src/kds_s2000w_option_descriptors.c | 3 +++ tests/kds_s2000w_option_descriptor_tests.c | 10 ++++++---- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/kds_s2000w_option_descriptors.c b/src/kds_s2000w_option_descriptors.c index 909d3c9..c95a27e 100644 --- a/src/kds_s2000w_option_descriptors.c +++ b/src/kds_s2000w_option_descriptors.c @@ -1534,6 +1534,7 @@ SANE_Status _kds_s2000w_option_descriptors_init_min_profile() descriptors = NULL; return SANE_STATUS_NO_MEM; } + descriptors[i]->descriptor = NULL; } descriptors[0]->config_name = OPTION_COUNT; @@ -1583,6 +1584,7 @@ SANE_Status _kds_s2000w_option_descriptors_init_230802_v1_0_36_profile() descriptors = NULL; return SANE_STATUS_NO_MEM; } + descriptors[i]->descriptor = NULL; } descriptors[0]->config_name = OPTION_COUNT; @@ -1660,6 +1662,7 @@ SANE_Status _kds_s2000w_option_descriptors_init_full_profile() descriptors = NULL; return SANE_STATUS_NO_MEM; } + descriptors[i]->descriptor = NULL; } descriptors[0]->config_name = OPTION_COUNT; diff --git a/tests/kds_s2000w_option_descriptor_tests.c b/tests/kds_s2000w_option_descriptor_tests.c index 55d4954..1ef4684 100644 --- a/tests/kds_s2000w_option_descriptor_tests.c +++ b/tests/kds_s2000w_option_descriptor_tests.c @@ -876,11 +876,13 @@ void Kds_s2000w_option_init_descriptor_no_mem() assert_int_equal(status, SANE_STATUS_NO_MEM); - status = 0; - set_no_mem_counter(1); - status = kds_s2000w_option_descriptors_init(PROFILE_FULL); + for (uint32_t i = 0; i < 127; i++) { + status = 0; + set_no_mem_counter(i + 1); + status = kds_s2000w_option_descriptors_init(PROFILE_FULL); - assert_int_equal(status, SANE_STATUS_NO_MEM); + assert_int_equal(status, SANE_STATUS_NO_MEM); + } } int main() -- 2.47.3