From bccdc041665032b819fab1c04ed4dbdfeeeb366b Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Fri, 31 Mar 2023 11:11:45 +0900 Subject: Check if `Bundler::EnvironmentPreserver` is defined Only `Bundler` might be defined. `EnvironmentPreserver` and its `BUNDLER_PREFIX` would be defined together in the same file. --- tool/lib/leakchecker.rb | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'tool') diff --git a/tool/lib/leakchecker.rb b/tool/lib/leakchecker.rb index ea07049aa5..4cd28b9dd5 100644 --- a/tool/lib/leakchecker.rb +++ b/tool/lib/leakchecker.rb @@ -233,9 +233,12 @@ class LeakChecker old_env = @env_info new_env = find_env return false if old_env == new_env + if defined?(Bundler::EnvironmentPreserver) + bundler_prefix = Bundler::EnvironmentPreserver::BUNDLER_PREFIX + end (old_env.keys | new_env.keys).sort.each {|k| # Don't report changed environment variables caused by Bundler's backups - next if defined?(Bundler) and k.start_with?(Bundler::EnvironmentPreserver::BUNDLER_PREFIX) + next if bundler_prefix and k.start_with?(bundler_prefix) if old_env.has_key?(k) if new_env.has_key?(k) -- cgit v1.2.1