diff --git a/lib/manifique/metadata.rb b/lib/manifique/metadata.rb index cfcb97a..64a8ac2 100644 --- a/lib/manifique/metadata.rb +++ b/lib/manifique/metadata.rb @@ -47,7 +47,7 @@ module Manifique end if options[:sizes] - results.reject! { |r| r["sizes"].nil? } + results.reject! { |r| r["sizes"].nil? || r["sizes"].match(/(\d+)x/).nil? } results.sort! { |a, b| sizes_to_i(b["sizes"]) <=> sizes_to_i(a["sizes"]) } if icon = select_exact_size(results, options[:sizes]) diff --git a/spec/manifique/metadata_spec.rb b/spec/manifique/metadata_spec.rb index fcc4b1e..adf025c 100644 --- a/spec/manifique/metadata_spec.rb +++ b/spec/manifique/metadata_spec.rb @@ -105,6 +105,7 @@ def icon_fixtures {"src"=>"/application_icon_x228.png", "sizes"=>"228x228", "type"=>"image/png"}, {"src"=>"/application_icon_x196.png", "sizes"=>"196x196", "type"=>"image/png"}, {"src"=>"/application_icon_x192.png", "sizes"=>"192x192", "type"=>"image/png"}, + {"src"=>"/icon-maskable.svg", "type"=>"image/svg+xml", "sizes"=>"any", "purpose"=>"maskable"}, {"purpose"=>"apple-touch-icon", "src"=>"/apple-touch-icon.png", "sizes"=>"180x180", "type"=>"image/png" }, {"purpose"=>"apple-touch-icon", "src"=>"/apple-touch-icon-57px.png", "sizes"=>"57x57", "type"=>"image/png"}, {"purpose"=>"mask-icon", "src"=>"/mask-icon.svg", "type"=>"image/svg", "color"=>"#2b90d9"}