diff -r a82793a6d1a0 -r 94c6e36e0f8d master/domain.c --- a/master/domain.c Mon Jun 30 15:51:46 2008 +0000 +++ b/master/domain.c Tue Jul 01 15:38:20 2008 +0000 @@ -344,10 +344,14 @@ void ecrt_domain_external_memory(ec_domain_t *domain, uint8_t *mem) { + down(&domain->master->master_sem); + ec_domain_clear_data(domain); domain->data = mem; domain->data_origin = EC_ORIG_EXTERNAL; + + up(&domain->master->master_sem); } /*****************************************************************************/