diff --git a/master/fsm_master.c b/master/fsm_master.c index fa88b692d6b4242071d958c7c167bfb3a605cb10..c853b7c84007bf329d935e489b4ce80b9a8618e1 100644 --- a/master/fsm_master.c +++ b/master/fsm_master.c @@ -697,15 +697,15 @@ void ec_fsm_master_state_rewrite_addresses(ec_fsm_master_t *fsm void ec_fsm_master_state_scan_slaves(ec_fsm_master_t *fsm /**< master state machine */) { ec_master_t *master = fsm->master; - ec_slave_t *slave = fsm->slave; + ec_slave_t *slave; if (ec_fsm_slave_exec(&fsm->fsm_slave)) // execute slave state machine return; // another slave to fetch? - if (slave->list.next != &master->slaves) { + if (fsm->slave->list.next != &master->slaves) { fsm->slave = list_entry(fsm->slave->list.next, ec_slave_t, list); - ec_fsm_slave_start_scan(&fsm->fsm_slave, slave); + ec_fsm_slave_start_scan(&fsm->fsm_slave, fsm->slave); ec_fsm_slave_exec(&fsm->fsm_slave); // execute immediately return; }