[sane-devel] [Regression][Patch] genesys: Canon Lidescan 60, head does not return

Stef stef.dev at free.fr
Mon Nov 19 19:17:46 UTC 2012


On 19/11/2012 17:14, Georg Altmann wrote:
> Hi,
>
> after upgrading from Ubuntu 10.04 (lucid, libsane-1.0.20-13ubuntu2) to
> ubuntu 12.04 (precise, libsane-1.0.22-7ubuntu1), the scan head of my
> Scanner stopped returning to its starting position after each scan.
>
> I traced the problem down in sane-backends to
> commit eba438b9
>
>      don't wait head to be parked at end of scan to improve scan speed
>      - issue slow_back_home without wait flag at end of scan
>      - ensure head is parked at scan start and at close
>      - issue slow_back_home before doing digital processing
>
> The problem appears to be caused by
> diff --git a/backend/genesys.c b/backend/genesys.c
> index f01bb6b..ecdec48 100644
> --- a/backend/genesys.c
> +++ b/backend/genesys.c
> @@ -8029,7 +8029,7 @@ sane_cancel (SANE_Handle handle)
>     /* park head if flatbed scanner */
>     if (s->dev->model->is_sheetfed == SANE_FALSE)
>       {
> -      status = s->dev->model->cmd_set->slow_back_home (s->dev, 1);
> +      status = s->dev->model->cmd_set->slow_back_home (s->dev,
> s->dev->model->flags & GENESYS_FLAG_MUST_WAIT);
>         if (status != SANE_STATUS_GOOD)
>          {
>            DBG (DBG_error,
>
> which should probably read
>
>        status = s->dev->model->cmd_set->slow_back_home (s->dev,
> s->dev->model->flags && GENESYS_FLAG_MUST_WAIT);
>
>
> The latter reproducibly fixes the problem for me.
>
>
> For completeness I attached two patches:
> fix-lidescan60-regression-orig-eba438b9.patch
> -> Fixes the bug where it was originally introduced (commit eba438b9)
>
> fix-lidescan60-regression-master_2012-11-19-eb9af2d4.patch
> -> Fixes the bug in the current master branch (commit eb9af2d4a3)
>
> Tested for  Canon Lidescan 60
> % sane-find-scanner
> [...]
> found USB scanner (vendor=0x04a9 [Canon], product=0x221c [CanoScan],
> chip=GL842) at libusb:002:009
> [...]
>
> % lsb_release -a
> LSB Version:
> core-2.0-ia32:core-2.0-noarch:core-3.0-ia32:core-3.0-noarch:core-3.1-ia32:core-3.1-noarch:core-3.2-ia32:core-3.2-noarch:core-4.0-ia32:core-4.0-noarch:cxx-3.0-ia32:cxx-3.0-noarch:cxx-3.1-ia32:cxx-3.1-noarch:cxx-3.2-ia32:cxx-3.2-noarch:cxx-4.0-ia32:cxx-4.0-noarch:desktop-3.1-ia32:desktop-3.1-noarch:desktop-3.2-ia32:desktop-3.2-noarch:desktop-4.0-ia32:desktop-4.0-noarch:graphics-2.0-ia32:graphics-2.0-noarch:graphics-3.0-ia32:graphics-3.0-noarch:graphics-3.1-ia32:graphics-3.1-noarch:graphics-3.2-ia32:graphics-3.2-noarch:graphics-4.0-ia32:graphics-4.0-noarch:printing-3.2-ia32:printing-3.2-noarch:printing-4.0-ia32:printing-4.0-noarch:qt4-3.1-ia32:qt4-3.1-noarch
> Distributor ID:	Ubuntu
> Description:	Ubuntu 12.04.1 LTS
> Release:	12.04
> Codename:	precise
>
> % uname -a
> Linux georg-ubuntu 3.2.0-29-generic-pae #46-Ubuntu SMP Fri Jul 27
> 17:25:43 UTC 2012 i686 i686 i386 GNU/Linux
>
> There is also a bug report in the tracker
> #313909
> https://alioth.debian.org/tracker/index.php?func=detail&aid=313909&group_id=30186&atid=410366
>
> Thank you for developing sane!
>
> Regards,
> 	Georg
>
>
>
     Hello,

     like you wrote in bugtracker #313909, a flag is needed to the 
device description of the LiDE60. Thanks for testing it.
     It would be great if you could test the latest git source version. 
I have improved a few things regarding head parking.


Regards,
     Stef





More information about the sane-devel mailing list