From fcad0a1a40a4af80b330518a5472d194cd828860 Mon Sep 17 00:00:00 2001 From: Bastian Dehn Date: Sun, 22 Mar 2026 09:56:11 +0100 Subject: [PATCH] change only one alloc point for array --- src/kds_s2000w_option_descriptors.c | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/src/kds_s2000w_option_descriptors.c b/src/kds_s2000w_option_descriptors.c index a1a53f4..f0d3b18 100644 --- a/src/kds_s2000w_option_descriptors.c +++ b/src/kds_s2000w_option_descriptors.c @@ -1447,10 +1447,6 @@ option_descriptor_t* _kds_s2000w_option_descriptor_document_feeder_timeout_respo ******************************************************************************/ SANE_Status _kds_s2000w_option_descriptors_init_min_profile() { - kds_s2000w_option_descriptors = malloc(sizeof(option_descriptors_t)); - if (kds_s2000w_option_descriptors == NULL) - return SANE_STATUS_NO_MEM; - kds_s2000w_option_descriptors->size = PROFILE_MIN_MAX_OPTION_COUNT; kds_s2000w_option_descriptors->descriptors = malloc(sizeof(option_descriptor_t*) * kds_s2000w_option_descriptors->size); if (kds_s2000w_option_descriptors->descriptors == NULL) { @@ -1477,10 +1473,6 @@ SANE_Status _kds_s2000w_option_descriptors_init_min_profile() SANE_Status _kds_s2000w_option_descriptors_init_230802_v1_0_36_profile() { - kds_s2000w_option_descriptors = malloc(sizeof(option_descriptors_t)); - if (kds_s2000w_option_descriptors == NULL) - return SANE_STATUS_NO_MEM; - kds_s2000w_option_descriptors->size = PROFILE_230802_V1_0_36_MAX_OPTION_COUNT; kds_s2000w_option_descriptors->descriptors = malloc(sizeof(option_descriptor_t*) * kds_s2000w_option_descriptors->size); if (kds_s2000w_option_descriptors->descriptors == NULL) { @@ -1521,10 +1513,6 @@ SANE_Status _kds_s2000w_option_descriptors_init_230802_v1_0_36_profile() SANE_Status _kds_s2000w_option_descriptors_init_full_profile() { - kds_s2000w_option_descriptors = malloc(sizeof(option_descriptors_t)); - if (kds_s2000w_option_descriptors == NULL) - return SANE_STATUS_NO_MEM; - kds_s2000w_option_descriptors->size = PROFILE_FULL_MAX_OPTION_COUNT; kds_s2000w_option_descriptors->descriptors = malloc(sizeof(option_descriptor_t*) * kds_s2000w_option_descriptors->size); if (kds_s2000w_option_descriptors->descriptors == NULL) { @@ -1590,6 +1578,10 @@ SANE_Status _kds_s2000w_option_descriptors_init_full_profile() ******************************************************************************/ SANE_Status kds_s2000w_option_descriptors_init(profile_t profile) { + kds_s2000w_option_descriptors = malloc(sizeof(option_descriptors_t)); + if (kds_s2000w_option_descriptors == NULL) + return SANE_STATUS_NO_MEM; + switch (profile) { case PROFILE_FULL: return _kds_s2000w_option_descriptors_init_full_profile(); -- 2.47.3