From: Bastian Dehn Date: Mon, 20 Oct 2025 14:34:06 +0000 (+0200) Subject: change fist mem then calc metadata X-Git-Tag: v1.1.15^2~15 X-Git-Url: https://gitweb.hhaalo.de/?a=commitdiff_plain;h=440a1cf0ea52b074f4c405816c2da2a862281fec;p=sane-kds-s2000w-net.git change fist mem then calc metadata --- diff --git a/src/kds_s2000w_handler.c b/src/kds_s2000w_handler.c index a11cc14..15307bc 100644 --- a/src/kds_s2000w_handler.c +++ b/src/kds_s2000w_handler.c @@ -331,25 +331,24 @@ void kds_s2000w_handler_get_current_metadata(handler_t* h, metadata_t* params) image->data = NULL; image->size = 0; - uint8_t channels = 1; - if (params->format == 1) - channels = 3; - kds_s2000w_image_converter_metadata_from_scanner_image(scanner_image, mdata); + kds_s2000w_image_converter_to_pnm(scanner_image, image); + kds_s2000w_debug_printf_int(DEBUG, "size of pnm image", image->size); + h->scan_status->read_bytes = _kds_s2000w_handler_find_first_data_byte(h->image); + params->depth = mdata->depth; params->pixels_per_line = mdata->width; params->lines = mdata->height; - kds_s2000w_image_converter_to_pnm(scanner_image, image); - kds_s2000w_debug_printf_int(DEBUG, "size of pnm image", image->size); + uint8_t channels = 1; + if (params->format == 1) + channels = 3; if (params->depth == 1) params->bytes_per_line = channels * floor((params->pixels_per_line + 7) / 8); else params->bytes_per_line = channels * params->pixels_per_line * params->depth / 8; - h->scan_status->read_bytes = _kds_s2000w_handler_find_first_data_byte(h->image); - free(mdata); mdata = NULL; free(scanner_image->data);