diff --git a/typo3/sysext/extbase/Classes/Routing/ExtbasePluginEnhancer.php b/typo3/sysext/extbase/Classes/Routing/ExtbasePluginEnhancer.php
index d68d2587bb7084470283f8251c785573624348d8..d8ff40f11bbcaef478034f2630273a5d5c06f9a3 100644
--- a/typo3/sysext/extbase/Classes/Routing/ExtbasePluginEnhancer.php
+++ b/typo3/sysext/extbase/Classes/Routing/ExtbasePluginEnhancer.php
@@ -147,7 +147,9 @@ class ExtbasePluginEnhancer extends PluginEnhancer
             $variables = array_flip($compiledRoute->getPathVariables());
             $mergedParams = array_replace($variant->getDefaults(), $deflatedParameters);
             // all params must be given, otherwise we exclude this variant
-            if ($variables === [] || array_diff_key($variables, $mergedParams) !== []) {
+            // (it is allowed that $variables is empty - in this case variables are
+            // "given" implicitly through controller-action pair in `_controller`)
+            if (array_diff_key($variables, $mergedParams)) {
                 continue;
             }
             $variant->addOptions(['deflatedParameters' => $deflatedParameters]);