return SANE_STATUS_GOOD;
}
- for (int i = 0; i < 10; i++) {
- sleep(1);
- kds_s2000w_handler_get_parameters(h);
- if (h->current_metadata->valid)
- break;
- }
-
- if (!h->current_metadata->valid)
- return SANE_STATUS_UNSUPPORTED;
-
metadata mdata;
memcpy(&mdata, h->current_metadata, sizeof(metadata));
{
debug_printf(ALL, "sane_kds_s2000w_net_start");
handler* h = (handler*) handle;
+
+ if (h->read_info->scan_started) {
+ for (int i = 0; i < 10; i++) {
+ sleep(1);
+ kds_s2000w_handler_get_parameters(h);
+ if (h->current_metadata->valid)
+ break;
+ }
+ }
+
if (!h->read_info->scan_started) {
h->read_info->cancel = 0;
h->read_info->scan_started = 1;
+ h->current_metadata->is_last = 0;
kds_s2000w_handler_start_scan(h);
}
return SANE_STATUS_GOOD;
#include <stdlib.h>
#include <sane/sane.h>
-START_TEST(kds_s2000w_net_get_parameters_invalid_metdata)
-{
- handler* h = init_handler();
- h->read_info->scan_started = 1;
- SANE_Parameters params;
-
- SANE_Status status = _sane_kds_s2000w_net_get_parameters(h, ¶ms);
-
- ck_assert_int_eq(status, SANE_STATUS_UNSUPPORTED);
-
- free_handler(h);
- h = NULL;
-}
-END_TEST
-
START_TEST(kds_s2000w_net_get_parameters_with_image_data)
{
handler* h = init_handler();
Suite* get_params = suite_create("kds_s2000w_net_get_parameters");
TCase* net_get_params = tcase_create("get parameters");
- tcase_add_test(net_get_params, kds_s2000w_net_get_parameters_invalid_metdata);
tcase_add_test(net_get_params, kds_s2000w_net_get_parameters_with_image_data);
suite_add_tcase(get_params, net_get_params);
return get_params;