Hi, when I use scanadf with the driver sp15c (V 1.0.17, from debian), the first page is scanned but the second page from the feeder aborts with a busy error. It seems the flag "scanning" in the driver is not reset at the correct place. This patch works for me:
-------------------------------------------------------------------------- --- sp15c.c~ Sat Oct 1 19:06:25 2005 +++ sp15c.c Wed Mar 22 11:48:45 2006 @@ -1733,15 +1733,14 @@ } /* sp15c_media_check */ static SANE_Status do_cancel (struct sp15c *scanner) { DBG (10, "do_cancel\n"); swap_res (scanner); - scanner->scanning = SANE_FALSE; do_eof (scanner); /* close pipe and reposition scanner */ if (scanner->reader_pid > 0) { int exit_status; DBG (10, "do_cancel: kill reader_process\n"); @@ -2057,14 +2056,15 @@ } /* reader_process */ static SANE_Status do_eof (struct sp15c *scanner) { DBG (10, "do_eof\n"); + scanner->scanning = SANE_FALSE; if (scanner->pipe >= 0) { close (scanner->pipe); scanner->pipe = -1; } return SANE_STATUS_EOF; } /* do_eof */ -------------------------------------------------------------------------- ciao Andreas