]> git.openstreetmap.org Git - rails.git/blobdiff - lib/gpx.rb
Merge remote-tracking branch 'upstream/pull/2626'
[rails.git] / lib / gpx.rb
index 068b8481563dad0ae568a00d294eefb88cc71fda..1212db6423deadeaa62fca89cfd674b8b5a39646 100644 (file)
@@ -51,7 +51,7 @@ module GPX
       rescue Archive::Error
         io = ::File.open(@file)
 
-        case MimeMagic.by_magic(io).type
+        case MimeMagic.by_magic(io)&.type
         when "application/gzip" then io = Zlib::GzipReader.open(@file)
         when "application/x-bzip" then io = Bzip2::FFI::Reader.open(@file)
         end
@@ -66,7 +66,7 @@ module GPX
       height = 250
       delay = 50
 
-      points_per_frame = num_points / nframes
+      points_per_frame = (num_points.to_f / nframes).ceil
 
       proj = OSM::Mercator.new(min_lat, min_lon, max_lat, max_lon, width, height)
 
@@ -114,6 +114,7 @@ module GPX
       end
 
       image = GD2::AnimatedGif.new
+      image.add(frames.first)
       frames.each do |frame|
         image.add(frame, :delay => delay)
       end