From: Bastian Dehn Date: Tue, 14 Jan 2025 19:47:18 +0000 (+0100) Subject: change device info to stack X-Git-Tag: v1.0.26^2~1 X-Git-Url: https://gitweb.hhaalo.de/?a=commitdiff_plain;h=2f9b421acb0065ac1a40499279d8259edb9e63b4;p=sane-kds-s2000w-net.git change device info to stack --- diff --git a/src/kds_s2000w_net.c b/src/kds_s2000w_net.c index 9cb1b53..647b3bd 100644 --- a/src/kds_s2000w_net.c +++ b/src/kds_s2000w_net.c @@ -10,8 +10,8 @@ #define MODEL "Kodak Alaris s2000w series" #define TYPE "sheetfed scanner" -SANE_Device** device_info_list = NULL; -SANE_Device* device_info = NULL; +SANE_Device* device_info_ptr; +SANE_Device device_info; SANE_Status _sane_kds_s2000w_net_init(SANE_Int* version_code, SANE_Auth_Callback authorize) { @@ -25,11 +25,6 @@ SANE_Status _sane_kds_s2000w_net_init(SANE_Int* version_code, SANE_Auth_Callback void _sane_kds_s2000w_net_exit(void) { debug_printf(ALL, "sane_kds_s2000w_net_exit"); - - free(device_info); - device_info = NULL; - free(device_info_list); - device_info_list = NULL; } SANE_Status _sane_kds_s2000w_net_get_devices(SANE_Device*** device_list, @@ -40,15 +35,12 @@ SANE_Status _sane_kds_s2000w_net_get_devices(SANE_Device*** device_list, if (local_only) return SANE_STATUS_NO_MEM; - device_info_list = malloc(sizeof(SANE_Device*) * 2); - device_info = malloc(sizeof(SANE_Device)); - device_info->name = NAME; - device_info->vendor = VENDOR; - device_info->model = MODEL; - device_info->type = TYPE; - device_info_list[0] = device_info; - device_info_list[1] = NULL; - *device_list = device_info_list; + device_info.name = NAME; + device_info.vendor = VENDOR; + device_info.model = MODEL; + device_info.type = TYPE; + device_info_ptr = &device_info; + *device_list = &device_info_ptr; return SANE_STATUS_GOOD; } diff --git a/tests/kds_s2000w_net_tests.c b/tests/kds_s2000w_net_tests.c index 769069d..bb6cb6b 100644 --- a/tests/kds_s2000w_net_tests.c +++ b/tests/kds_s2000w_net_tests.c @@ -17,7 +17,6 @@ void kds_s2000w_net_get_devices() assert_string_equal(device_list[0][0]->vendor, "Kodak"); assert_string_equal(device_list[0][0]->model, "Kodak Alaris s2000w series"); assert_string_equal(device_list[0][0]->type, "sheetfed scanner"); - assert_null(device_list[0][1]); free(device_list); device_list = NULL;