kopia lustrzana https://gitlab.com/sane-project/backends
changelog entry for genesys build 83
rodzic
72b7da9600
commit
15403160f0
10
ChangeLog
10
ChangeLog
|
@ -1,17 +1,17 @@
|
|||
2012-06-01 Stéphane Voltz <stef.dev@free.fr>
|
||||
2012-05-31 Stéphane Voltz <stef.dev@free.fr>
|
||||
* doc/descriptions/genesys.desc doc/sane-genesys.man
|
||||
doc/descriptions/unsupported.desc: updated Xerox onetouch 2400 status
|
||||
to supported
|
||||
* backend/genesys.c: fix get_device to handle scanner plugging and
|
||||
unplugging
|
||||
|
||||
2012-05-29 Stéphane Voltz <stef.dev@free.fr>
|
||||
* backend/genesys.c backend/genesys_devices.c backend/genesys_gl847.c
|
||||
* backend/genesys.c backend/genesys_devices.c backend/genesys_gl847.c
|
||||
backend/genesys_gl847.h doc/descriptions/genesys.desc: add 4800 dpi
|
||||
for LiDE 700F
|
||||
- improve fedd/move to scan area for gl847 based scanners
|
||||
- remove non working 400 dpi mode
|
||||
|
||||
2012-05-28 Stéphane Voltz <stef.dev@free.fr>
|
||||
* backend/genesys.c backend/genesys_devices.c backend/genesys_gl124.c
|
||||
* backend/genesys.c backend/genesys_devices.c backend/genesys_gl124.c
|
||||
backend/genesys_gl847.c backend/genesys_gl847.h backend/genesys_low.h
|
||||
doc/descriptions/genesys.desc doc/sane-genesys.man:
|
||||
add support for LiDE 700F up to 2400 dpi
|
||||
|
|
|
@ -58,7 +58,7 @@
|
|||
* SANE backend for Genesys Logic GL646/GL841/GL842/GL843/GL847/GL124 based scanners
|
||||
*/
|
||||
|
||||
#define BUILD 82
|
||||
#define BUILD 83
|
||||
#define BACKEND_NAME genesys
|
||||
|
||||
#include "genesys.h"
|
||||
|
@ -6578,13 +6578,17 @@ sane_exit (void)
|
|||
SANE_Status
|
||||
sane_get_devices (const SANE_Device *** device_list, SANE_Bool local_only)
|
||||
{
|
||||
Genesys_Device *dev;
|
||||
SANE_Int dev_num;
|
||||
Genesys_Device *dev, *prev;
|
||||
SANE_Status status;
|
||||
SANE_Int index;
|
||||
SANE_Int dn;
|
||||
SANE_Device *sane_device;
|
||||
|
||||
DBG (DBG_proc, "sane_get_devices: start: local_only = %s\n",
|
||||
local_only == SANE_TRUE ? "true" : "false");
|
||||
|
||||
/* hot-plug case :detection of newly connected scanners */
|
||||
sanei_usb_init();
|
||||
probe_genesys_devices ();
|
||||
|
||||
if (devlist)
|
||||
|
@ -6594,21 +6598,66 @@ sane_get_devices (const SANE_Device *** device_list, SANE_Bool local_only)
|
|||
if (!devlist)
|
||||
return SANE_STATUS_NO_MEM;
|
||||
|
||||
dev_num = 0;
|
||||
for (dev = first_dev; dev_num < num_devices; dev = dev->next)
|
||||
prev = NULL;
|
||||
index = 0;
|
||||
dev = first_dev;
|
||||
while(dev!=NULL)
|
||||
{
|
||||
SANE_Device *sane_device;
|
||||
/* check if device removed */
|
||||
status = sanei_usb_open (dev->file_name, &dn);
|
||||
if(status==SANE_STATUS_GOOD)
|
||||
{
|
||||
sanei_usb_close(dn);
|
||||
sane_device = malloc (sizeof (*sane_device));
|
||||
if (!sane_device)
|
||||
return SANE_STATUS_NO_MEM;
|
||||
sane_device->name = dev->file_name;
|
||||
sane_device->vendor = dev->model->vendor;
|
||||
sane_device->model = dev->model->model;
|
||||
sane_device->type = strdup ("flatbed scanner");
|
||||
devlist[index] = sane_device;
|
||||
index++;
|
||||
prev=dev;
|
||||
dev=dev->next;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* remove device from internal list */
|
||||
/* case 1 : removed device is first_dev */
|
||||
if(prev==NULL)
|
||||
{
|
||||
/* test for another dev */
|
||||
if(dev->next==NULL)
|
||||
{
|
||||
/* empty the whole list */
|
||||
free(dev);
|
||||
first_dev=NULL;
|
||||
num_devices=0;
|
||||
dev=NULL;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* assign new start */
|
||||
first_dev=dev->next;
|
||||
num_devices--;
|
||||
free(dev);
|
||||
dev=dev->next;
|
||||
}
|
||||
}
|
||||
/* case 2 : removed device is not first_dev */
|
||||
else
|
||||
{
|
||||
/* link previous dev to next dev */
|
||||
prev->next=dev->next;
|
||||
free(dev);
|
||||
num_devices--;
|
||||
|
||||
sane_device = malloc (sizeof (*sane_device));
|
||||
if (!sane_device)
|
||||
return SANE_STATUS_NO_MEM;
|
||||
sane_device->name = dev->file_name;
|
||||
sane_device->vendor = dev->model->vendor;
|
||||
sane_device->model = dev->model->model;
|
||||
sane_device->type = strdup ("flatbed scanner");
|
||||
devlist[dev_num++] = sane_device;
|
||||
/* next loop */
|
||||
dev=prev->next;
|
||||
}
|
||||
}
|
||||
}
|
||||
devlist[dev_num++] = 0;
|
||||
devlist[index] = 0;
|
||||
|
||||
*device_list = devlist;
|
||||
|
||||
|
|
Ładowanie…
Reference in New Issue