diff --git a/lib/classes/record/adapter.php b/lib/classes/record/adapter.php index 7c91e2e135..8475ff1d9c 100644 --- a/lib/classes/record/adapter.php +++ b/lib/classes/record/adapter.php @@ -1107,8 +1107,11 @@ class record_adapter implements RecordInterface, cache_cacheableInterface $this->set_xml($xml); unset($xml); - $this->write_metas(); - $this->dispatch(RecordEvents::METADATA_CHANGED, new MetadataChangedEvent($this)); + // if there is yet subdefs, ask to write metadata + if (count($this->getMediaSubdefRepository()->findByRecordIdsAndNames([$this->getRecordId()])) > 1 ) { + $this->write_metas(); + $this->dispatch(RecordEvents::METADATA_CHANGED, new MetadataChangedEvent($this)); + } return $this; }