packages/utils/sane-backends/patches/101-fix_uclibc_std_rand.patch
Luiz Angelo Daros de Luca 0a85579e45 sane-backends: update to 1.0.29
- Migrate libusb dependency back to libsane
  (virtually all useful backends for OpenWrt would need it anyway)
- Disabled new usb-record-replay feature (avoid libxml2 dep)
- Disabled new escl backend (network-only backend are not too useful
  for OpenWrt and it requires libcurl, libnetsnmp, libavahi and libxml2)
- Workaround sane-daemon/postinst installation on Imagebuild
- Enabled backends kvs40xx and mustek_usb2 (fixed upstream)
- Fix bigendian compilation
  (https://gitlab.com/sane-project/backends/-/merge_requests/329)
- Fix missing std::round() for uclibc
  (https://gitlab.com/sane-project/backends/issues/237)
- Fixes FS#2685: coldplug was running before usblp was loaded. Now
  it grants access do usblp when a device using it is plugged.

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2020-02-03 02:24:08 -03:00

16 lines
663 B
Diff

https://gitlab.com/sane-project/backends/issues/237
--- a/backend/genesys/image_pipeline.cpp
+++ b/backend/genesys/image_pipeline.cpp
@@ -703,7 +703,11 @@ bool ImagePipelineNodeCalibrate::get_nex
float value_f = static_cast<float>(value) / max_value;
value_f = (value_f - offset_[curr_calib_i]) * multiplier_[curr_calib_i];
+#if defined(__UCLIBC__)
+ value_f = round(value_f * max_value);
+#else
value_f = std::round(value_f * max_value);
+#endif
value = clamp<std::int32_t>(static_cast<std::int32_t>(value_f), 0, max_value);
set_raw_channel_to_row(out_data, x, ch, value, format);