diff --git a/core/lib/Drupal/Core/Updater/Module.php b/core/lib/Drupal/Core/Updater/Module.php index acc3028..daab4f1 100644 --- a/core/lib/Drupal/Core/Updater/Module.php +++ b/core/lib/Drupal/Core/Updater/Module.php @@ -49,10 +49,9 @@ public function isInstalled() { * Implements Drupal\Core\Updater\UpdaterInterface::canUpdateDirectory(). */ public static function canUpdateDirectory($directory) { - if (file_scan_directory($directory, '/.*\.module$/')) { - return TRUE; - } - return FALSE; + $files = file_scan_directory($directory, '/.*\.info\.yml$/'); + $info = drupal_parse_info_file(reset($files)->uri); + return $info['type'] == 'module'; } /** diff --git a/core/lib/Drupal/Core/Updater/Theme.php b/core/lib/Drupal/Core/Updater/Theme.php index 9770ab9..3f02b0d 100644 --- a/core/lib/Drupal/Core/Updater/Theme.php +++ b/core/lib/Drupal/Core/Updater/Theme.php @@ -49,11 +49,9 @@ public function isInstalled() { * Implements Drupal\Core\Updater\UpdaterInterface::canUpdateDirectory(). */ static function canUpdateDirectory($directory) { - // This is a lousy test, but don't know how else to confirm it is a theme. - if (file_scan_directory($directory, '/.*\.theme$/')) { - return FALSE; - } - return TRUE; + $files = file_scan_directory($directory, '/.*\.info\.yml$/'); + $info = drupal_parse_info_file(reset($files)->uri); + return $info['type'] == 'theme'; } /**