diff options
Diffstat (limited to 'src/scanner.c')
-rw-r--r-- | src/scanner.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/scanner.c b/src/scanner.c index 9181868..b27ae2a 100644 --- a/src/scanner.c +++ b/src/scanner.c @@ -457,6 +457,10 @@ set_default_option (SANE_Handle handle, const SANE_Option_Descriptor *option, SA { SANE_Status status; + /* Check if supports automatic option */ + if ((option->cap & SANE_CAP_AUTOMATIC) == 0) + return FALSE; + status = sane_control_option (handle, option_index, SANE_ACTION_SET_AUTO, NULL, NULL); g_debug ("sane_control_option (%d, SANE_ACTION_SET_AUTO) -> %s", option_index, get_status_string (status)); @@ -880,7 +884,7 @@ do_open (Scanner *scanner) if (!job->device) { g_warning ("No scan device available"); - fail_scan (scanner, status, + fail_scan (scanner, 0, /* Error displayed when no scanners to scan with */ _("No scanners available. Please connect a scanner.")); return; @@ -986,6 +990,8 @@ do_get_option (Scanner *scanner) else if (strcmp (option->name, SANE_NAME_SCAN_SOURCE) == 0) { const char *flatbed_sources[] = { + "Auto", + SANE_I18N ("Auto"), "Flatbed", SANE_I18N ("Flatbed"), "FlatBed", |