master/fsm_change.c
changeset 1225 4d5b739edcb5
parent 986 a486591ba86b
child 1326 ef907b0b5125
--- a/master/fsm_change.c	Mon Sep 29 10:17:33 2008 +0000
+++ b/master/fsm_change.c	Tue Sep 30 07:34:55 2008 +0000
@@ -223,6 +223,7 @@
 
     // read AL status from slave
     ec_datagram_fprd(datagram, slave->station_address, 0x0130, 2);
+    ec_datagram_zero(datagram);
     fsm->retries = EC_FSM_RETRIES;
     fsm->spontaneous_change = 0;
     fsm->state = ec_fsm_change_state_status;
@@ -299,6 +300,7 @@
                req_state, slave->ring_position, cur_state);
         // fetch AL status error code
         ec_datagram_fprd(datagram, slave->station_address, 0x0134, 2);
+        ec_datagram_zero(datagram);
         fsm->retries = EC_FSM_RETRIES;
         fsm->state = ec_fsm_change_state_code;
         return;
@@ -319,6 +321,7 @@
  check_again:
     // no timeout yet. check again
     ec_datagram_fprd(datagram, slave->station_address, 0x0130, 2);
+    ec_datagram_zero(datagram);
     fsm->retries = EC_FSM_RETRIES;
 }
 
@@ -457,6 +460,7 @@
 
     // read new AL status
     ec_datagram_fprd(datagram, slave->station_address, 0x0130, 2);
+    ec_datagram_zero(datagram);
     fsm->retries = EC_FSM_RETRIES;
     fsm->state = ec_fsm_change_state_check_ack;
 }
@@ -525,6 +529,7 @@
 
     // reread new AL status
     ec_datagram_fprd(datagram, slave->station_address, 0x0130, 2);
+    ec_datagram_zero(datagram);
     fsm->retries = EC_FSM_RETRIES;
 }