diff --git a/backend/genesys.cc b/backend/genesys.cc index 2a4e5526b..4c5984cbe 100644 --- a/backend/genesys.cc +++ b/backend/genesys.cc @@ -3651,14 +3651,8 @@ genesys_start_scan (Genesys_Device * dev, SANE_Bool lamp_off) sanei_genesys_wait_for_home(dev); } - /* disable power saving*/ - status = dev->model->cmd_set->save_power (dev, SANE_FALSE); - if (status != SANE_STATUS_GOOD) - { - DBG(DBG_error, "%s: failed to disable power saving mode: %s\n", __func__, - sane_strstatus(status)); - return status; - } + // disable power saving + dev->model->cmd_set->save_power(dev, SANE_FALSE); /* wait for lamp warmup : until a warmup for TRANSPARENCY is designed, skip * it when scanning from XPA. */ @@ -6217,7 +6211,6 @@ void sane_close_impl(SANE_Handle handle) { DBG_HELPER(dbg); - SANE_Status status = SANE_STATUS_GOOD; /* remove handle from list of open handles: */ auto it = s_scanners->end(); @@ -6251,13 +6244,8 @@ sane_close_impl(SANE_Handle handle) } } - /* enable power saving before leaving */ - status = s->dev->model->cmd_set->save_power (s->dev, SANE_TRUE); - if (status != SANE_STATUS_GOOD) - { - DBG(DBG_error, "%s: failed to enable power saving mode: %s\n", __func__, - sane_strstatus(status)); - } + // enable power saving before leaving + s->dev->model->cmd_set->save_power(s->dev, SANE_TRUE); // here is the place to store calibration cache if (s->dev->force_calibration == 0) { @@ -6864,20 +6852,19 @@ set_option_value (Genesys_Scanner * s, int option, void *val, s->dev->gamma_override_tables[GENESYS_BLUE][i] = table[i]; } break; - case OPT_CALIBRATE: - status = s->dev->model->cmd_set->save_power (s->dev, SANE_FALSE); - if (status != SANE_STATUS_GOOD) - { - DBG(DBG_error, "%s: failed to disable power saving mode: %s\n", __func__, - sane_strstatus(status)); - } - else - status = genesys_scanner_calibration(s->dev, sensor); - /* not critical if this fails*/ - s->dev->model->cmd_set->save_power (s->dev, SANE_TRUE); - /* signals that sensors will have to be read again */ - *myinfo |= SANE_INFO_RELOAD_PARAMS | SANE_INFO_RELOAD_OPTIONS; - break; + case OPT_CALIBRATE: { + catch_all_exceptions(__func__, [&]() + { + s->dev->model->cmd_set->save_power(s->dev, SANE_FALSE); + TIE(genesys_scanner_calibration(s->dev, sensor)); + }); + catch_all_exceptions(__func__, [&]() + { + s->dev->model->cmd_set->save_power(s->dev, SANE_TRUE); + }); + *myinfo |= SANE_INFO_RELOAD_PARAMS | SANE_INFO_RELOAD_OPTIONS; + break; + } case OPT_CLEAR_CALIBRATION: s->dev->calibration_cache.clear(); @@ -7321,13 +7308,7 @@ void sane_cancel_impl(SANE_Handle handle) /* enable power saving mode unless we are parking .... */ if(s->dev->parking==SANE_FALSE) { - status = s->dev->model->cmd_set->save_power (s->dev, SANE_TRUE); - if (status != SANE_STATUS_GOOD) - { - DBG(DBG_error, "%s: failed to enable power saving mode: %s\n", __func__, - sane_strstatus(status)); - return; - } + s->dev->model->cmd_set->save_power(s->dev, SANE_TRUE); } return; diff --git a/backend/genesys_gl124.cc b/backend/genesys_gl124.cc index bef9b8de4..3a38021fd 100644 --- a/backend/genesys_gl124.cc +++ b/backend/genesys_gl124.cc @@ -1487,14 +1487,10 @@ gl124_calculate_current_setup (Genesys_Device * dev, const Genesys_Sensor& senso * @param dev device to use * @param enable true to set inot powersaving * */ -static SANE_Status -gl124_save_power (Genesys_Device * dev, SANE_Bool enable) +static void gl124_save_power(Genesys_Device* dev, SANE_Bool enable) { + (void) dev; DBG_HELPER_ARGS(dbg, "enable = %d", enable); - if (dev == NULL) - return SANE_STATUS_INVAL; - - return SANE_STATUS_GOOD; } static SANE_Status diff --git a/backend/genesys_gl646.cc b/backend/genesys_gl646.cc index 45d03bdbb..3eb6f16b2 100644 --- a/backend/genesys_gl646.cc +++ b/backend/genesys_gl646.cc @@ -1519,9 +1519,7 @@ static void gl646_public_set_fe(Genesys_Device* dev, const Genesys_Sensor& senso * @param enable SANE_TRUE to enable power saving, SANE_FALSE to leave it * @return allways SANE_STATUS_GOOD */ -static -SANE_Status -gl646_save_power (Genesys_Device * dev, SANE_Bool enable) +static void gl646_save_power(Genesys_Device* dev, SANE_Bool enable) { DBG_HELPER_ARGS(dbg, "enable = %d", enable); @@ -1535,8 +1533,6 @@ gl646_save_power (Genesys_Device * dev, SANE_Bool enable) { gl646_set_fe(dev, sensor, AFE_INIT, 0); } - - return SANE_STATUS_GOOD; } static SANE_Status diff --git a/backend/genesys_gl646.h b/backend/genesys_gl646.h index 686c61cdd..963ee2dce 100644 --- a/backend/genesys_gl646.h +++ b/backend/genesys_gl646.h @@ -169,9 +169,7 @@ static void gl646_set_fe(Genesys_Device* dev, const Genesys_Sensor& sensor, uint static void gl646_public_set_fe(Genesys_Device* dev, const Genesys_Sensor& sensor, uint8_t set); -static -SANE_Status -gl646_save_power (Genesys_Device * dev, SANE_Bool enable); +static void gl646_save_power(Genesys_Device* dev, SANE_Bool enable); static void gl646_slow_back_home(Genesys_Device* dev, SANE_Bool wait_until_home); diff --git a/backend/genesys_gl841.cc b/backend/genesys_gl841.cc index 0741d6aae..d728487b3 100644 --- a/backend/genesys_gl841.cc +++ b/backend/genesys_gl841.cc @@ -2305,8 +2305,8 @@ dummy \ scanned lines dev->current_setup.max_shift = max_shift + stagger; } -/*for fast power saving methods only, like disabling certain amplifiers*/ -static SANE_Status gl841_save_power(Genesys_Device * dev, SANE_Bool enable) +// for fast power saving methods only, like disabling certain amplifiers +static void gl841_save_power(Genesys_Device* dev, SANE_Bool enable) { DBG_HELPER_ARGS(dbg, "enable = %d", enable); uint8_t val; @@ -2401,8 +2401,6 @@ static SANE_Status gl841_save_power(Genesys_Device * dev, SANE_Bool enable) } } - - return SANE_STATUS_GOOD; } static SANE_Status diff --git a/backend/genesys_gl843.cc b/backend/genesys_gl843.cc index f2c0a653c..c9b388b98 100644 --- a/backend/genesys_gl843.cc +++ b/backend/genesys_gl843.cc @@ -1671,16 +1671,11 @@ gl843_calculate_current_setup(Genesys_Device * dev, const Genesys_Sensor& sensor * @param dev device to use * @param enable true to set inot powersaving * */ -static SANE_Status -gl843_save_power (Genesys_Device * dev, SANE_Bool enable) +static void gl843_save_power(Genesys_Device* dev, SANE_Bool enable) { DBG_HELPER_ARGS(dbg, "enable = %d", enable); uint8_t val; - if (dev == NULL) { - return SANE_STATUS_INVAL; - } - // switch KV-SS080 lamp off if (dev->model->gpo_type == GPO_KVSS080) { sanei_genesys_read_register(dev, REG6C, &val); @@ -1691,8 +1686,6 @@ gl843_save_power (Genesys_Device * dev, SANE_Bool enable) } sanei_genesys_write_register(dev,REG6C,val); } - - return SANE_STATUS_GOOD; } static SANE_Status diff --git a/backend/genesys_gl846.cc b/backend/genesys_gl846.cc index 19c52f6dc..82dbffbe8 100644 --- a/backend/genesys_gl846.cc +++ b/backend/genesys_gl846.cc @@ -1339,15 +1339,11 @@ gl846_calculate_current_setup(Genesys_Device * dev, const Genesys_Sensor& sensor dev->current_setup.max_shift = max_shift + stagger; } -/*for fast power saving methods only, like disabling certain amplifiers*/ -static SANE_Status -gl846_save_power (Genesys_Device * dev, SANE_Bool enable) +// for fast power saving methods only, like disabling certain amplifiers +static void gl846_save_power(Genesys_Device* dev, SANE_Bool enable) { + (void) dev; DBG_HELPER_ARGS(dbg, "enable = %d", enable); - if (dev == NULL) - return SANE_STATUS_INVAL; - - return SANE_STATUS_GOOD; } static SANE_Status diff --git a/backend/genesys_gl847.cc b/backend/genesys_gl847.cc index d0c8358e7..805febfdf 100644 --- a/backend/genesys_gl847.cc +++ b/backend/genesys_gl847.cc @@ -1355,15 +1355,11 @@ gl847_calculate_current_setup(Genesys_Device * dev, const Genesys_Sensor& sensor dev->current_setup.max_shift = max_shift + stagger; } -/*for fast power saving methods only, like disabling certain amplifiers*/ -static SANE_Status -gl847_save_power (Genesys_Device * dev, SANE_Bool enable) +// for fast power saving methods only, like disabling certain amplifiers +static void gl847_save_power(Genesys_Device* dev, SANE_Bool enable) { DBG_HELPER_ARGS(dbg, "enable = %d", enable); - if (dev == NULL) - return SANE_STATUS_INVAL; - - return SANE_STATUS_GOOD; + (void) dev; } static SANE_Status diff --git a/backend/genesys_low.h b/backend/genesys_low.h index e24153aa8..96cfd4bf3 100644 --- a/backend/genesys_low.h +++ b/backend/genesys_low.h @@ -1067,7 +1067,7 @@ struct Genesys_Command_Set void (*set_fe) (Genesys_Device* dev, const Genesys_Sensor& sensor, uint8_t set); SANE_Status (*set_powersaving) (Genesys_Device * dev, int delay); - SANE_Status (*save_power) (Genesys_Device * dev, SANE_Bool enable); + void (*save_power) (Genesys_Device* dev, SANE_Bool enable); void (*begin_scan) (Genesys_Device* dev, const Genesys_Sensor& sensor, Genesys_Register_Set* regs, SANE_Bool start_motor);