[sane-devel] [dev] net backend and timing problems? (pretty weird)
mh
crapsite at gmx.net
Thu Sep 6 11:34:19 BST 2001
Hi all,
when I try to scan over saned (localhost) using the net/plustek backend, the
frontend crashes with a bt like this:
Program received signal SIGPIPE, Broken pipe.
0x403f7004 in write () from /lib/libc.so.6
(gdb) bt
#0 0x403f7004 in write () from /lib/libc.so.6
#1 0x404a6408 in __DTOR_END__ () from /usr/local/lib/sane/libsane-net.so.1
#2 0x404a45ca in flush (w=0x810f164) at sanei_wire.c:345
#3 0x404a4614 in sanei_w_set_dir () at sanei_wire.c:345
#4 0x404a468b in sanei_w_call () at sanei_wire.c:345
...
(tested with xsane and quiteinsane, SANE 1.0.5)
This crash occurs after the scanner has returned to it's start position.
Now the weird part of the story:
If I modify the net backend (~ line 268, net.c) like this,
static SANE_Status
do_cancel (Net_Scanner * s)
{
sleep(3); /* <--- add this line */
s->hw->auth_active = 0;
if (s->data >= 0)
{
close (s->data);
s->data = -1;
}
return SANE_STATUS_CANCELLED;
}
then everything seems to work fine. The scanner returns to the start position,
the whole stuff freezes for 3 seconds, but i don't get a SIGPIPE.
Now it's possible, that my old hardware simply needs some sleep from time to
time :-)
However, I hope, that someone might have an idea what's really going on ?
Thanks for any hint
Michael
More information about the sane-devel
mailing list