master/master.c
changeset 663 38d9c37664d9
parent 661 bc1de1362efb
child 664 18c48cb7de06
--- a/master/master.c	Fri Mar 16 14:02:21 2007 +0000
+++ b/master/master.c	Fri Mar 16 14:42:04 2007 +0000
@@ -1129,11 +1129,11 @@
     if (none_open)
         goto queue_timer;
 
+    if (master->request_cb(master->cb_data)) goto queue_timer;
+
     // receive datagrams
-    if (master->request_cb(master->cb_data)) goto queue_timer;
     cycles_start = get_cycles();
     ecrt_master_receive(master);
-    master->release_cb(master->cb_data);
 
     // actual EoE processing
     list_for_each_entry(eoe, &master->eoe_handlers, list) {
@@ -1141,9 +1141,9 @@
     }
 
     // send datagrams
-    if (master->request_cb(master->cb_data)) goto queue_timer;
     ecrt_master_send(master);
     cycles_end = get_cycles();
+
     master->release_cb(master->cb_data);
 
     master->eoe_cycle_times[master->eoe_cycle_time_pos]