kopia lustrzana https://gitlab.com/sane-project/frontends
Added checks for the return values of SANE API functions.
rodzic
df76db9165
commit
215717250a
|
@ -41,6 +41,16 @@
|
|||
#include <sane/sane.h>
|
||||
#include <sane/saneopts.h>
|
||||
|
||||
#define DBG_fatal 0
|
||||
#define DBG_error 1
|
||||
#define DBG_warning 2
|
||||
#define DBG_info 3
|
||||
#define DBG_debug 4
|
||||
|
||||
#define DEBUG_NOT_STATIC
|
||||
#define BACKEND_NAME xscanimage
|
||||
#include "../include/sane/sanei_debug.h"
|
||||
|
||||
int gsg_message_dialog_active = 0;
|
||||
|
||||
/* forward declarations: */
|
||||
|
@ -425,6 +435,7 @@ scale_update (GtkAdjustment * adj_data, GSGDialogElement * elem)
|
|||
SANE_Word val, new_val;
|
||||
int opt_num;
|
||||
double d;
|
||||
SANE_Status status;
|
||||
|
||||
opt_num = elem - dialog->element;
|
||||
opt = sane_get_option_descriptor (dialog->dev, opt_num);
|
||||
|
@ -446,8 +457,14 @@ scale_update (GtkAdjustment * adj_data, GSGDialogElement * elem)
|
|||
return;
|
||||
}
|
||||
set_option (dialog, opt_num, &val, SANE_ACTION_SET_VALUE);
|
||||
sane_control_option (dialog->dev, opt_num, SANE_ACTION_GET_VALUE, &new_val,
|
||||
0);
|
||||
status = sane_control_option (dialog->dev, opt_num, SANE_ACTION_GET_VALUE, &new_val,
|
||||
0);
|
||||
if (status != SANE_STATUS_GOOD)
|
||||
{
|
||||
DBG (DBG_fatal, "scale_update: sane_control_option failed: %s\n", sane_strstatus (status));
|
||||
return;
|
||||
}
|
||||
|
||||
if (new_val != val)
|
||||
{
|
||||
val = new_val;
|
||||
|
|
|
@ -79,6 +79,16 @@
|
|||
#include "preview.h"
|
||||
#include "preferences.h"
|
||||
|
||||
#define DBG_fatal 0
|
||||
#define DBG_error 1
|
||||
#define DBG_warning 2
|
||||
#define DBG_info 3
|
||||
#define DBG_debug 4
|
||||
|
||||
#define DEBUG_DECLARE_ONLY
|
||||
#define BACKEND_NAME xscanimage
|
||||
#include "../include/sane/sanei_debug.h"
|
||||
|
||||
#ifndef PATH_MAX
|
||||
# define PATH_MAX 1024
|
||||
#endif
|
||||
|
@ -497,12 +507,19 @@ static void
|
|||
set_option_bool (Preview *p, int option, SANE_Bool value)
|
||||
{
|
||||
SANE_Handle dev;
|
||||
SANE_Status status;
|
||||
|
||||
if (option <= 0)
|
||||
return;
|
||||
|
||||
dev = p->dialog->dev;
|
||||
sane_control_option (dev, option, SANE_ACTION_SET_VALUE, &value, 0);
|
||||
status = sane_control_option (dev, option, SANE_ACTION_SET_VALUE, &value, 0);
|
||||
if (status != SANE_STATUS_GOOD)
|
||||
{
|
||||
DBG (DBG_fatal, "set_option_bool: sane_control_option failed: %s\n",
|
||||
sane_strstatus (status));
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
static int
|
||||
|
|
|
@ -45,6 +45,7 @@
|
|||
#include <sane/saneopts.h>
|
||||
#include "../include/sane/sanei.h"
|
||||
|
||||
#define DEBUG_DECLARE_ONLY
|
||||
#define BACKEND_NAME xscanimage
|
||||
#include "../include/sane/sanei_debug.h"
|
||||
|
||||
|
@ -307,6 +308,7 @@ query (void)
|
|||
char name[1024];
|
||||
size_t len;
|
||||
int i, j;
|
||||
SANE_Status status;
|
||||
|
||||
DBG(DBG_debug, "query\n");
|
||||
gimp_install_procedure (
|
||||
|
@ -323,8 +325,19 @@ query (void)
|
|||
nargs, nreturn_vals,
|
||||
args, return_vals);
|
||||
|
||||
sane_init (0, 0);
|
||||
sane_get_devices (&devlist, SANE_FALSE);
|
||||
status = sane_init (0, 0);
|
||||
if (status != SANE_STATUS_GOOD)
|
||||
{
|
||||
DBG (DBG_fatal, "query: sane_init failed: %s\n", sane_strstatus (status));
|
||||
exit (1);
|
||||
}
|
||||
|
||||
status = sane_get_devices (&devlist, SANE_FALSE);
|
||||
if (status != SANE_STATUS_GOOD)
|
||||
{
|
||||
DBG (DBG_fatal, "query: sane_get_devices failed: %s\n", sane_strstatus (status));
|
||||
exit (1);
|
||||
}
|
||||
|
||||
for (i = 0; devlist[i]; ++i)
|
||||
{
|
||||
|
@ -447,8 +460,8 @@ SANE_Word get_resolution (SANE_Handle dev)
|
|||
if (strncmp (option_desc->name, SANE_NAME_SCAN_RESOLUTION,
|
||||
sizeof(SANE_NAME_SCAN_RESOLUTION)) == 0)
|
||||
{
|
||||
sane_control_option (dev, i, SANE_ACTION_GET_VALUE,
|
||||
&resolution, 0);
|
||||
status = sane_control_option (dev, i, SANE_ACTION_GET_VALUE,
|
||||
&resolution, 0);
|
||||
if (status == SANE_STATUS_GOOD)
|
||||
{
|
||||
if (option_desc->type == SANE_TYPE_INT)
|
||||
|
@ -1954,6 +1967,7 @@ init (int argc, char **argv)
|
|||
{
|
||||
char filename[PATH_MAX];
|
||||
struct stat st;
|
||||
SANE_Status status;
|
||||
|
||||
DBG(DBG_debug, "init\n");
|
||||
gtk_init (&argc, &argv);
|
||||
|
@ -1981,7 +1995,12 @@ init (int argc, char **argv)
|
|||
gtk_rc_parse (filename);
|
||||
}
|
||||
|
||||
sane_init (0, 0);
|
||||
status = sane_init (0, 0);
|
||||
if (status != SANE_STATUS_GOOD)
|
||||
{
|
||||
DBG (DBG_fatal, "init: sane_init failed: %s\n", sane_strstatus (status));
|
||||
exit (1);
|
||||
}
|
||||
|
||||
if (argc > 1)
|
||||
{
|
||||
|
@ -2025,7 +2044,13 @@ init (int argc, char **argv)
|
|||
{
|
||||
char * defdevname;
|
||||
|
||||
sane_get_devices (&devlist, SANE_FALSE);
|
||||
status = sane_get_devices (&devlist, SANE_FALSE);
|
||||
if (status != SANE_STATUS_GOOD)
|
||||
{
|
||||
DBG (DBG_fatal, "init: sane_get_devices failed: %s\n", sane_strstatus (status));
|
||||
exit (1);
|
||||
}
|
||||
|
||||
if ((defdevname = getenv("SANE_DEFAULT_DEVICE")) != NULL)
|
||||
{
|
||||
int i;
|
||||
|
|
Ładowanie…
Reference in New Issue