diff --git a/core/modules/migrate/src/Annotation/MigrateSource.php b/core/modules/migrate/src/Annotation/MigrateSource.php index 349bcf8..95a2431 100644 --- a/core/modules/migrate/src/Annotation/MigrateSource.php +++ b/core/modules/migrate/src/Annotation/MigrateSource.php @@ -81,7 +81,10 @@ public function getProvider() { */ public function getProviders() { if (isset($this->definition['provider'])) { - return is_array($this->definition['provider']) ? $this->definition['provider'] : [$this->definition['provider']]; + // Ensure that we return an array even if + // \Drupal\Component\Annotation\AnnotationInterface::setProvider() has + // been called. + return (array) $this->definition['provider']; } return []; } diff --git a/core/modules/migrate/src/Plugin/Discovery/AnnotatedClassDiscoveryAutomatedProviders.php b/core/modules/migrate/src/Plugin/Discovery/AnnotatedClassDiscoveryAutomatedProviders.php index 8a53db4..967569c 100644 --- a/core/modules/migrate/src/Plugin/Discovery/AnnotatedClassDiscoveryAutomatedProviders.php +++ b/core/modules/migrate/src/Plugin/Discovery/AnnotatedClassDiscoveryAutomatedProviders.php @@ -73,7 +73,7 @@ protected function prepareAnnotationDefinition(AnnotationInterface $annotation, $providers = array_unique(array_filter($providers, function ($provider) { return $provider && $provider !== 'component'; })); - $annotation->setProviders(array_unique(array_filter($providers))); + $annotation->setProviders($providers); } /**