X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/21fd6d31263565159a081e85a3450a7f3de33c6a..332bcb6b181109d56fc8b30ae78ade3961849a83:/app/controllers/api_controller.rb diff --git a/app/controllers/api_controller.rb b/app/controllers/api_controller.rb index 8e4004dd1..fd9ce22ed 100644 --- a/app/controllers/api_controller.rb +++ b/app/controllers/api_controller.rb @@ -186,7 +186,7 @@ class ApiController < ApplicationController if segment_ids.length > 0 way_segments = WaySegment.find_all_by_segment_id(segment_ids) way_ids = way_segments.collect {|way_segment| way_segment.id } - ways = Way.find(way_ids) # NB: doesn't pick up segments, tags from db until accessed via way.way_segments etc. + ways = Way.find(way_ids, :include => [:way_tags]) # NB: doesn't pick up segments, tags from db until accessed via way.way_segments etc. # seg_ids = way_segments.collect {|way_segment| way_segment.segment_id } @@ -197,7 +197,8 @@ class ApiController < ApplicationController end - segments_to_fetch = list_of_way_segments.uniq - segment_ids + # - [0] in case some thing links to segment 0 which doesn't exist. Shouldn't actually ever happen but it does. FIXME: file a ticket for this + segments_to_fetch = (list_of_way_segments.uniq - segment_ids) - [0] if segments_to_fetch.length > 0 segments += Segment.find(segments_to_fetch)