diff --git a/src/EventSubscriber/MigrationImportSync.php b/src/EventSubscriber/MigrationImportSync.php index 1a87f89ee7999840751a53a4c0fe031bffd2c641..5e4054729daa195ab3653daf00758fd442a1c8b1 100644 --- a/src/EventSubscriber/MigrationImportSync.php +++ b/src/EventSubscriber/MigrationImportSync.php @@ -89,15 +89,16 @@ class MigrationImportSync implements EventSubscriberInterface { } } - $destination_ids = $id_map->currentDestination(); - - if ($destination_ids !== NULL && $destination_ids !== [] && !in_array($map_source_id, $source_id_values, TRUE)) { - $this->dispatchRowDeleteEvent(MigrateEvents::PRE_ROW_DELETE, $migration, $destination_ids); - if (class_exists(MigratePlusEvents::class)) { - $this->dispatchRowDeleteEvent(MigratePlusEvents::MISSING_SOURCE_ITEM, $migration, $destination_ids); + if (!in_array($map_source_id, $source_id_values, TRUE)) { + $destination_ids = $id_map->currentDestination(); + if ($destination_ids !== NULL) { + $this->dispatchRowDeleteEvent(MigrateEvents::PRE_ROW_DELETE, $migration, $destination_ids); + if (class_exists(MigratePlusEvents::class)) { + $this->dispatchRowDeleteEvent(MigratePlusEvents::MISSING_SOURCE_ITEM, $migration, $destination_ids); + } + $destination->rollback($destination_ids); + $this->dispatchRowDeleteEvent(MigrateEvents::POST_ROW_DELETE, $migration, $destination_ids); } - $destination->rollback($destination_ids); - $this->dispatchRowDeleteEvent(MigrateEvents::POST_ROW_DELETE, $migration, $destination_ids); $id_map->delete($map_source_id); } $id_map->next();