lib/usps_flags/generate.rb in usps_flags-0.1.21 vs lib/usps_flags/generate.rb in usps_flags-0.1.22

- old
+ new

@@ -189,23 +189,27 @@ # # @param [Boolean] svg Generate zip archive of SVG images. # @param [Boolean] png Generate zip archive of PNG images. def self.zips(svg: true, png: true) ["svg", "png"].each do |format| - if eval(format) - zip = "#{USPSFlags::Config.flags_dir}/ZIP/USPS_Flags.#{format}.zip" - ::File.delete(zip) if ::File.exists?(zip) - Zip::File.open(zip, Zip::File::CREATE) do |z| - Dir.glob("#{USPSFlags::Config.flags_dir}/#{format.upcase}/**/*").each do |f| - if f.split("/").last(2).first == "insignia" - filename = "insignia/#{f.split("/").last}" - z.add(filename, f) - else - z.add(f.split("/").last, f) + begin + if eval(format) + zip = "#{USPSFlags::Config.flags_dir}/ZIP/USPS_Flags.#{format}.zip" + ::File.delete(zip) if ::File.exists?(zip) + Zip::File.open(zip, Zip::File::CREATE) do |z| + Dir.glob("#{USPSFlags::Config.flags_dir}/#{format.upcase}/**/*").each do |f| + if f.split("/").last(2).first == "insignia" + filename = "insignia/#{f.split("/").last}" + z.add(filename, f) + else + z.add(f.split("/").last, f) + end end end + puts "Generated #{format.upcase} Zip" end - puts "Generated #{format.upcase} Zip" + rescue Errno::EACCES => e + puts "Error: Failed to generate #{format.upcase} Zip -> #{e.message}" end end end # Generate trident spec sheet as an SVG image.