[sane-devel] gt68xx - sane_open() afrer sane_close()

m. allan noah kitno455 at gmail.com
Tue Jul 31 16:27:06 UTC 2012


I would try it, and see if the device_id is the same in both calls to
sane_open. In either case, I think this is a bug in the backend. Sane
standard says about sane_get_devices:

"The returned list is guaranteed to remain unchanged and valid until
(a) another call to this function is performed or (b) a call to
sane_exit() is performed."

So, sane_close should not invalidate the device.

allan

On Tue, Jul 31, 2012 at 12:15 PM, Aleksandr Dezhin <me at dezhin.net> wrote:
> Calling sane_get_devices() before each sane_open() something helps isolate
> the problem? I am trying to develop a program that works a dozen devices at
> the same time. Asurvey of all the devices at each operation seems to me
> something strange.
>
> On 07/31/2012 06:23 PM, m. allan noah wrote:
>>
>> It is possible that this is a bug in that backend. perhaps you should
>> call sane_get_devices again?
>>
>> allan
>>
>> On Tue, Jul 31, 2012 at 10:13 AM, Aleksandr Dezhin <me at dezhin.net> wrote:
>>>
>>> Hello,
>>>
>>> As I wrote, I'm trying to develop web interface for SANE. I am developing
>>> it
>>> using Python.I do not want to lock device so that other WSGI-proccess
>>> instances can access it. Atypical code flow is as follows:
>>>
>>> sane_init()
>>> sane_get_devices()
>>>
>>> // user selected device, showing page with capabilities
>>> sane_open(device_id)
>>> sane_get_option_description()
>>> sane_close()
>>>
>>> // user requested to scan page
>>> sane_open(device_id)
>>> sane_control_option()
>>> sane_start()
>>> sane_read()
>>> sane_cancel()
>>> sane_close()
>>>
>>> // program exitting
>>> sane_exit()
>>>
>>> Canon LiDE 210 with genesys backend or HPLIP works as expected, but
>>> Mustek
>>> Bearpaw 1200 CU Plus with gt68xx fails open_device() secondly, after
>>> sane_close(). If I skip first open()/close() - second block works
>>> correctly.
>>> What is this? Bug or feature?
>>>
>>> Sorry I can not give an example of a simple program in C. If it helps I
>>> can
>>> send a link to the repository with my application. It contains some
>>> modified
>>> version of the python C extension from pysane.
>>>
>>> Thanks.
>>>
>>> --
>>> sane-devel mailing list: sane-devel at lists.alioth.debian.org
>>> http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/sane-devel
>>> Unsubscribe: Send mail with subject "unsubscribe your_password"
>>>              to sane-devel-request at lists.alioth.debian.org
>>
>>
>>
>
>
> --
> sane-devel mailing list: sane-devel at lists.alioth.debian.org
> http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/sane-devel
> Unsubscribe: Send mail with subject "unsubscribe your_password"
>             to sane-devel-request at lists.alioth.debian.org



-- 
"The truth is an offense, but not a sin"



More information about the sane-devel mailing list