From dcd3b1f76f4fe81e18a68374fec0d67d4dd043ce Mon Sep 17 00:00:00 2001 From: "Kurt.Werle" Date: Tue, 30 Apr 2024 15:04:15 -0700 Subject: [PATCH] https://github.com/presidentbeef/brakeman/issues/1841 brakeman still references haml 4 - which is a bit long in the tooth (Haml::Filter::Coffee class vs. module) #1841 --- lib/brakeman/parsers/haml_embedded.rb | 49 +++++++++++++++++++-------- 1 file changed, 35 insertions(+), 14 deletions(-) diff --git a/lib/brakeman/parsers/haml_embedded.rb b/lib/brakeman/parsers/haml_embedded.rb index a636ed558a..db7e3b24a5 100644 --- a/lib/brakeman/parsers/haml_embedded.rb +++ b/lib/brakeman/parsers/haml_embedded.rb @@ -25,20 +25,41 @@ def compile(compiler, text) end end -# Fake CoffeeScript filter for Haml -module Haml::Filters::Coffee - include Haml::Filters::Base - extend Brakeman::FakeHamlFilter -end +# Haml::Filters::Coffee used to be defined as a module - now it is a class +if defined?(Haml::Filters::Coffee) && Haml::Filters::Coffee.class == Class + # Fake CoffeeScript filter for Haml + class Haml::Filters::Coffee + include Haml::Filters::Base + extend Brakeman::FakeHamlFilter + end -# Fake Markdown filter for Haml -module Haml::Filters::Markdown - include Haml::Filters::Base - extend Brakeman::FakeHamlFilter -end + # Fake Markdown filter for Haml + class Haml::Filters::Markdown + include Haml::Filters::Base + extend Brakeman::FakeHamlFilter + end + + # Fake Sass filter for Haml + class Haml::Filters::Sass + include Haml::Filters::Base + extend Brakeman::FakeHamlFilter + end +else + # Fake CoffeeScript filter for Haml + module Haml::Filters::Coffee + include Haml::Filters::Base + extend Brakeman::FakeHamlFilter + end -# Fake Sass filter for Haml -module Haml::Filters::Sass - include Haml::Filters::Base - extend Brakeman::FakeHamlFilter + # Fake Markdown filter for Haml + module Haml::Filters::Markdown + include Haml::Filters::Base + extend Brakeman::FakeHamlFilter + end + + # Fake Sass filter for Haml + module Haml::Filters::Sass + include Haml::Filters::Base + extend Brakeman::FakeHamlFilter + end end