diff --git a/backend/genesys.c b/backend/genesys.c index c05fadc2e..55c7aee79 100644 --- a/backend/genesys.c +++ b/backend/genesys.c @@ -6460,7 +6460,17 @@ set_option_value (Genesys_Scanner * s, int option, void *val, } break; case OPT_CALIBRATE: - status = genesys_scanner_calibration (s->dev); + 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", + __FUNCTION__, sane_strstatus (status)); + } + else + status = genesys_scanner_calibration (s->dev); + /*not critical if this fails*/ + s->dev->model->cmd_set->save_power (s->dev, SANE_TRUE); break; case OPT_CLEAR_CALIBRATION: /* clear calibration cache */ diff --git a/backend/genesys_gl841.c b/backend/genesys_gl841.c index cda73e209..5e4f1b33c 100644 --- a/backend/genesys_gl841.c +++ b/backend/genesys_gl841.c @@ -5852,7 +5852,6 @@ gl841_search_strip (Genesys_Device * dev, SANE_Bool forward, SANE_Bool black) DBG (DBG_proc, "gl841_search_strip %s %s\n", black ? "black" : "white", forward ? "forward" : "reverse"); - gl841_save_power (dev, SANE_FALSE); gl841_set_fe (dev, AFE_SET); status = gl841_stop_action (dev); if (status != SANE_STATUS_GOOD)