diff --git a/core/modules/locale/locale.module b/core/modules/locale/locale.module index f426670..03b8ade 100644 --- a/core/modules/locale/locale.module +++ b/core/modules/locale/locale.module @@ -387,6 +387,15 @@ function locale_modules_installed($modules) { } /** + * Implements hook_modules_disabled(). + */ +function locale_modules_disabled($modules) { + if (!config('locale.settings')->get('translation.check_disabled_modules')) { + locale_translation_status_delete_projects($modules); + } +} + +/** * Implements hook_modules_uninstalled(). */ function locale_modules_uninstalled($modules) { @@ -1084,13 +1093,14 @@ function locale_translation_status_delete_languages($langcodes) { */ function locale_translation_status_delete_projects($projects) { $status = locale_translation_get_status(); - - foreach ($status as $project => $languages) { - if (in_array($project, $projects)) { - unset($status[$project]); + if (isset($status)) { + foreach ($status as $project => $languages) { + if (in_array($project, $projects)) { + unset($status[$project]); + } } + \Drupal::state()->set('locale.translation_status', $status); } - \Drupal::state()->set('locale.translation_status', $status); } /**