aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--activesupport/lib/active_support/dependencies/zeitwerk_integration.rb14
1 files changed, 8 insertions, 6 deletions
diff --git a/activesupport/lib/active_support/dependencies/zeitwerk_integration.rb b/activesupport/lib/active_support/dependencies/zeitwerk_integration.rb
index 6892b31a5d..75624bae09 100644
--- a/activesupport/lib/active_support/dependencies/zeitwerk_integration.rb
+++ b/activesupport/lib/active_support/dependencies/zeitwerk_integration.rb
@@ -41,12 +41,14 @@ module ActiveSupport
def setup_autoloaders
Dependencies.autoload_paths.each do |autoload_path|
- if File.directory?(autoload_path)
- if autoload_once?(autoload_path)
- Rails.once_autoloader.push_dir(autoload_path)
- else
- Rails.autoloader.push_dir(autoload_path)
- end
+ # Zeitwerk only accepts existing directories in `push_dir` to
+ # prevent misconfigurations.
+ next unless File.directory?(autoload_path)
+
+ if autoload_once?(autoload_path)
+ Rails.once_autoloader.push_dir(autoload_path)
+ else
+ Rails.autoloader.push_dir(autoload_path)
end
end