[Bug 270579] graphics/epsonscan2: assertion failed when calling GetMaxScanSize

From: <bugzilla-noreply_at_freebsd.org>
Date: Sat, 01 Apr 2023 13:07:15 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=270579

            Bug ID: 270579
           Summary: graphics/epsonscan2: assertion failed when calling
                    GetMaxScanSize
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: ports-bugs@FreeBSD.org
          Reporter: kaltheat@gmail.com
                CC: fbsd@opal.com
                CC: fbsd@opal.com
             Flags: maintainer-feedback?(fbsd@opal.com)

Hi,

I try to use an EPSON Perfection V600 scanner. After having installed
graphics/epsonscan2 and doing the usual devd-fiddling xsane recognizes it:

$ scanimage -L
device `epsonscan2:Perfection V600/GT-X820:001:005:esci2:usb:ES00A1:314' is a
EPSON Perfection V600/GT-X820:001:005 flatbed scanner

But I cannot use it

$ env SANE_DEBUG_EPSON2=50 scanimage -A
Output format is not set, using pnm as a default.
[14:59:42.575203] [sanei_debug] Setting debug level of epson2 to 50.
[14:59:42.575600] [epson2] sane_epson2_init: version 1.1.1
[14:59:42.576938] [epson2] sane_epson2_get_devices
[14:59:42.576949] [epson2] probe_devices
[14:59:42.576954] [epson2] free_devices
[14:59:42.577002] [epson2] attach_one_config: len = 10, line = scsi EPSON
[14:59:42.577126] [epson2] attach_one_config: len = 3, line = usb
[14:59:42.577142] [epson2] attach_one_config: len = 17, line = net
autodiscovery
[14:59:42.577220] [epson2] e2_network_discovery, sent discovery packet
[14:59:43.579188] [epson2] e2_network_discovery, end
[14:59:43.579279] [epson2] sane_epson2_get_devices - results:
Assertion failed: (un32BasicResolution > 0), function GetMaxScanSize, file
/wrkdirs/usr/ports/graphics/epsonscan2/work/epsonscan2-6.6.40.0-1/src/ES2Command/Src/Command/ESCI/ESCIAccessor.cpp,
line 1128.
Abort (core dumped)



Here is the backtrace:

* thread #1, name = 'scanimage', stop reason = signal SIGABRT
  * frame #0: 0x0000000800519b8a libc.so.7`__sys_thr_kill + 10
    frame #1: 0x0000000800517f54 libc.so.7`__raise + 52
    frame #2: 0x0000000800490449 libc.so.7`abort + 73
    frame #3: 0x0000000800507ec1 libc.so.7`__assert + 81
    frame #4: 0x000000080450cb88
libes2command.so`CESCIAccessor::GetMaxScanSize() + 184
    frame #5: 0x00000008044faf4a
libes2command.so`CESScanner::GetMaxScanSizeCapability(std::__1::map<std::__1::basic_string<char,
std::__1::char_traits<char>, std::__1::allocator<char> >, boost::any,
std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char> > >,
std::__1::allocator<std::__1::pair<std::__1::basic_string<char,
std::__1::char_traits<char>, std::__1::allocator<char> > const, boost::any> >
>&) + 42
    frame #6: 0x00000008044f62f5
libes2command.so`CESScanner::GetCapabilityForKey(char const*,
std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char> >, boost::any,
std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char> > >,
std::__1::allocator<std::__1::pair<std::__1::basic_string<char,
std::__1::char_traits<char>, std::__1::allocator<char> > const, boost::any> >
>&) + 821
    frame #7: 0x0000000804521cf3
libes2command.so`CESCIScanner::GetCapabilityForKey(char const*,
std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char> >, boost::any,
std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char> > >,
std::__1::allocator<std::__1::pair<std::__1::basic_string<char,
std::__1::char_traits<char>, std::__1::allocator<char> > const, boost::any> >
>&) + 611
    frame #8: 0x00000008044e5a0d
libes2command.so`CESScanner::GetTargetCapabilityForKey(char const*, char
const*, std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char> >, boost::any,
std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char> > >,
std::__1::allocator<std::__1::pair<std::__1::basic_string<char,
std::__1::char_traits<char>, std::__1::allocator<char> > const, boost::any> >
>&) + 93
    frame #9: 0x000000080451f552
libes2command.so`CESCIScanner::GetValueForKey(char const*, boost::any&) + 370
    frame #10: 0x00000008044e7bff
libes2command.so`CESScanner::GetValueForKey(char const*, IESResultString*) + 63
    frame #11: 0x0000000804157bba libepsonscan2.so`bool
epsonscan::Engine::GetValueForKey<stESSize<float> >(char const*,
stESSize<float>&) + 90
    frame #12: 0x0000000804157846 libepsonscan2.so`bool
epsonscan::Scanner::GetValueForKey<stESSize<float> >(char const*,
stESSize<float>&, ESFunctionalUnitType) + 262
    frame #13: 0x0000000804158a18
libepsonscan2.so`epsonscan::ScanWidthMax::GetValue(int&) + 296
    frame #14: 0x000000080414beab
libepsonscan2.so`epsonscan::Key<int>::GetValue(SDIValueType, void*, int) + 59
    frame #15: 0x000000080413c96d
libepsonscan2.so`epsonscan::KeyMgr::GetValue(std::__1::basic_string<char,
std::__1::char_traits<char>, std::__1::allocator<char> > const&, SDIValueType,
void*, int) + 77
    frame #16: 0x00000008040f82c1
libepsonscan2.so`epsonscan::Controller::GetValue(std::__1::basic_string<char,
std::__1::char_traits<char>, std::__1::allocator<char> > const&, SDIValueType,
void*, int) + 97
    frame #17: 0x00000008040f4105 libepsonscan2.so`SDIScannerDriver_GetValue +
197
    frame #18: 0x0000000803f3d1d9
libsane-epsonscan2.so.1`Supervisor::Get_All_Value() + 3177
    frame #19: 0x0000000803f3301b libsane-epsonscan2.so.1`epsonscan_open(char
const*, void**) + 907
    frame #20: 0x000000080026af48 libsane.so.1`sane_dll_open + 632
    frame #21: 0x0000000000206957 scanimage`___lldb_unnamed_symbol191 + 1351
    frame #22: 0x0000000000206220 scanimage`___lldb_unnamed_symbol188 + 256


Can you help with it?

Maybe it's solved in a newer version? Saw that there is
epsonscan2-6.7.43.0-1.src.tar.gz already ...

Regards
kaltheat

-- 
You are receiving this mail because:
You are the assignee for the bug.