diff --git a/src/server/request_handler.cpp b/src/server/request_handler.cpp index 953f218a3..94668193b 100644 --- a/src/server/request_handler.cpp +++ b/src/server/request_handler.cpp @@ -110,6 +110,16 @@ void RequestHandler::HandleRequest(const http::request ¤t_request, http::r util::json::render(current_reply.content, result.get()); } + else if(result.is()) + { + auto& buffer = result.get(); + current_reply.content.resize(buffer.GetSize()); + std::copy(buffer.GetBufferPointer(), + buffer.GetBufferPointer() + buffer.GetSize(), + current_reply.content.begin()); + + current_reply.headers.emplace_back("Content-Type", "application/x-flatbuffers;schema=osrm.engine.api.fbresult"); + } else { BOOST_ASSERT(result.is());