]> gitweb.hhaalo.de Git - sane-kds-s2000w-net.git/commitdiff
every picture is last frame
authorBastian Dehn <hhaalo@arcor.de>
Sun, 25 Feb 2024 13:44:34 +0000 (14:44 +0100)
committerBastian Dehn <hhaalo@arcor.de>
Sun, 25 Feb 2024 13:44:34 +0000 (14:44 +0100)
src/kds_s2000w_handler.c
src/kds_s2000w_net.c
tests/kds_s2000w_net_get_params_tests.c

index 830b7bbcef7103a77e067143e39afb418c6bdb6f..98110a33c558252982d4a96d39deae627ee7a288 100644 (file)
@@ -92,7 +92,7 @@ void _get_current_metadata(handler* h)
                h->current_metadata->bytes_per_line = h->current_metadata->channels * h->current_metadata->pixels_per_line * h->current_metadata->depth / 8;
 
        h->current_metadata->valid = 1;
-       h->current_metadata->is_last = 0;
+       h->current_metadata->is_last = 1;
        
        metadata = NULL;
        kds_s2000w_client_response_free(resp);
@@ -180,7 +180,7 @@ handler* init_handler()
        h->current_scan_status->complete_scanned = 0;
        h->current_metadata->format = 1;
        h->current_metadata->channels = 3;
-       h->current_metadata->is_last = 0;
+       h->current_metadata->is_last = 1;
        h->current_metadata->size = 0;
        h->current_metadata->bytes_per_line = 0;
        h->current_metadata->pixels_per_line = 0;
index f7fe53f50b1bf810ba29de844b15339a8ae47338..19daccef5861eeb44d2757cab128fad679e5fe15 100644 (file)
@@ -125,41 +125,9 @@ SANE_Status _sane_kds_s2000w_net_get_parameters(SANE_Handle handle,
        debug_printf(ALL, "sane_kds_s2000w_net_get_parameters");
        handler* h = (handler*) handle;
        metadata mdata;
-       memcpy(&mdata, h->current_metadata, sizeof(metadata));
-
-       if (h->current_metadata->depth == 1)
-               h->current_metadata->bytes_per_line = h->current_metadata->channels * floor((h->current_metadata->pixels_per_line + 7) / 8);
-       else
-               h->current_metadata->bytes_per_line = h->current_metadata->channels * h->current_metadata->pixels_per_line * h->current_metadata->depth / 8;
-
-       params->format = mdata.format;
-       params->last_frame = mdata.is_last;
-       params->bytes_per_line = mdata.bytes_per_line;
-       params->pixels_per_line = mdata.pixels_per_line;
-       params->lines = mdata.lines;
-       params->depth = mdata.depth;
-
        if (!h->read_info->scan_started)
                return SANE_STATUS_GOOD;
 
-       if (h->current_metadata->is_last) {
-               memcpy(&mdata, h->current_metadata, sizeof(metadata));
-
-               params->format = mdata.format;
-               params->last_frame = mdata.is_last;
-               params->bytes_per_line = mdata.bytes_per_line;
-               params->pixels_per_line = mdata.pixels_per_line;
-               params->lines = mdata.lines;
-               params->depth = mdata.depth;
-               h->current_metadata->is_last = 0;
-
-               h->read_info->read_size = 0;
-               h->read_info->readed_bytes_per_line = 0;
-               h->read_info->readed_lines = 0;
-
-               return SANE_STATUS_GOOD;
-       }
-
        for (int i = 0; i < 10; i++) {
                sleep(1);
                kds_s2000w_handler_get_parameters(h);
index 34f50289ea6ac48fd06a379dd0c5797e66377bef..5901a5ba0933ea58a94ebfe2341c91dd5713c4dc 100644 (file)
@@ -34,7 +34,7 @@ START_TEST(kds_s2000w_net_get_parameters_with_image_data)
 
        ck_assert_int_eq(params.format, 1);
        ck_assert_int_eq(params.last_frame, 0);
-       ck_assert_int_eq(params.bytes_per_line, 3240);
+       ck_assert_int_eq(params.bytes_per_line, 42);
        ck_assert_int_eq(params.pixels_per_line, 1080);
        ck_assert_int_eq(params.lines, 100);
        ck_assert_int_eq(params.depth, 8);