From bd5cd850e3e60d27cdf97573e42916b83b26d8e7 Mon Sep 17 00:00:00 2001 From: Bastian Dehn Date: Sat, 20 Apr 2024 09:26:41 +0200 Subject: [PATCH] change all feeder modes by get options --- src/kds_s2000w_handler_opts.c | 8 ++++++-- src/kds_s2000w_net.c | 4 ++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/kds_s2000w_handler_opts.c b/src/kds_s2000w_handler_opts.c index 257c976..27315de 100644 --- a/src/kds_s2000w_handler_opts.c +++ b/src/kds_s2000w_handler_opts.c @@ -81,10 +81,14 @@ void kds_s2000w_handler_get_option(handler* h, int option, void* value, int* inf value_object = json_object_object_get(config, "ScanSource"); _write_string_value(value_object, value); + if (strcmp(value, "Flatbed") == 0) + h->current_scan_status->feeder = 0; + if (strcmp(value, "DocumentFeeder") == 0) h->current_scan_status->feeder = 1; - else - h->current_scan_status->feeder = 0; + + if (strcmp(value, "Automatic") == 0) + h->current_scan_status->feeder = 2; break; case 3: diff --git a/src/kds_s2000w_net.c b/src/kds_s2000w_net.c index 57cb527..8c1764e 100644 --- a/src/kds_s2000w_net.c +++ b/src/kds_s2000w_net.c @@ -181,7 +181,7 @@ SANE_Status _sane_kds_s2000w_net_start(SANE_Handle handle) return SANE_STATUS_NO_DOCS; } - if (h->current_scan_status->feeder + if (h->current_scan_status->feeder > 0 && h->current_scan_status->complete_scanned && h->current_scan_status->available_images <= 0) { kds_s2000w_handler_recreate_session(h); @@ -193,7 +193,7 @@ SANE_Status _sane_kds_s2000w_net_start(SANE_Handle handle) return SANE_STATUS_GOOD; } - if (!h->current_scan_status->feeder + if (h->current_scan_status->feeder != 1 && h->current_scan_status->available_images <= 0) { kds_s2000w_handler_recreate_session(h); return SANE_STATUS_GOOD; -- 2.39.5