X-Git-Url: http://aleph1.co.uk/gitweb/?a=blobdiff_plain;f=web%2Fcore%2Fmodules%2Ffilter%2Fsrc%2FElement%2FProcessedText.php;h=1a3392ba42eded0adce40a32f0ef10f74cb4c04a;hb=0bf8d09d2542548982e81a441b1f16e75873a04f;hp=6e2b3ec43e8726c44e71d6dbd4ffedc80303aacc;hpb=a2bd1bf0c2c1f1a17d188f4dc0726a45494cefae;p=yaffs-website diff --git a/web/core/modules/filter/src/Element/ProcessedText.php b/web/core/modules/filter/src/Element/ProcessedText.php index 6e2b3ec43..1a3392ba4 100644 --- a/web/core/modules/filter/src/Element/ProcessedText.php +++ b/web/core/modules/filter/src/Element/ProcessedText.php @@ -3,6 +3,7 @@ namespace Drupal\filter\Element; use Drupal\Core\Cache\Cache; +use Drupal\Core\Cache\CacheableMetadata; use Drupal\Core\Render\BubbleableMetadata; use Drupal\Core\Render\Element\RenderElement; use Drupal\filter\Entity\FilterFormat; @@ -69,7 +70,12 @@ class ProcessedText extends RenderElement { $langcode = $element['#langcode']; if (!isset($format_id)) { - $format_id = static::configFactory()->get('filter.settings')->get('fallback_format'); + $filter_settings = static::configFactory()->get('filter.settings'); + $format_id = $filter_settings->get('fallback_format'); + // Ensure 'filter.settings' config's cacheability is respected. + CacheableMetadata::createFromRenderArray($element) + ->addCacheableDependency($filter_settings) + ->applyTo($element); } /** @var \Drupal\filter\Entity\FilterFormat $format **/ $format = FilterFormat::load($format_id); @@ -82,7 +88,7 @@ class ProcessedText extends RenderElement { return $element; } - $filter_must_be_applied = function(FilterInterface $filter) use ($filter_types_to_skip) { + $filter_must_be_applied = function (FilterInterface $filter) use ($filter_types_to_skip) { $enabled = $filter->status === TRUE; $type = $filter->getType(); // Prevent FilterInterface::TYPE_HTML_RESTRICTOR from being skipped.