lib/rack/app/router.rb in rack-app-6.7.1 vs lib/rack/app/router.rb in rack-app-6.8.0
- old
+ new
@@ -36,10 +36,11 @@
# rename to merge!
def merge_router!(router, prop={})
raise(ArgumentError, 'invalid router object, must implement :endpoints interface') unless router.respond_to?(:endpoints)
router.endpoints.each do |endpoint|
new_request_path = ::Rack::App::Utils.join(prop[:namespaces], endpoint.request_path)
- new_endpoint = endpoint.fork(:request_path => new_request_path)
+ new_ancestors = endpoint.config.ancestor_apps + [prop[:new_ancestor]]
+ new_endpoint = endpoint.fork(:request_path => new_request_path, :ancestors => new_ancestors)
register_endpoint!(new_endpoint)
end
nil
end