From cda189d5ca7610394376b214e98fa2d3bf900d10 Mon Sep 17 00:00:00 2001 From: Michael Hackstein Date: Thu, 26 Nov 2015 16:02:38 +0100 Subject: [PATCH] Unvirtualized toJson of Traversal Node. Base Class toJson is required in Cluster. Explainer requires specific toJson --- arangod/Aql/TraversalNode.cpp | 5 ++++- arangod/VocBase/Traverser.h | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/arangod/Aql/TraversalNode.cpp b/arangod/Aql/TraversalNode.cpp index 86cf366096..02ac13a3cc 100644 --- a/arangod/Aql/TraversalNode.cpp +++ b/arangod/Aql/TraversalNode.cpp @@ -311,7 +311,10 @@ void TraversalNode::toJsonHelper (triagens::basics::Json& nodes, map.second.size()); for (auto const & x : map.second) { triagens::basics::Json exp(zone, triagens::basics::Json::Object); - x->toJson(exp, zone); + auto tmp = dynamic_cast(x); + if (tmp != nullptr) { + tmp->toJson(exp, zone); + } expressionArray(exp); } expressionObject.set(std::to_string(map.first), expressionArray); diff --git a/arangod/VocBase/Traverser.h b/arangod/VocBase/Traverser.h index 95df4568c9..d9947766b7 100644 --- a/arangod/VocBase/Traverser.h +++ b/arangod/VocBase/Traverser.h @@ -125,8 +125,8 @@ namespace triagens { } } - virtual void toJson (triagens::basics::Json& json, - TRI_memory_zone_t* zone) const; + void toJson (triagens::basics::Json& json, + TRI_memory_zone_t* zone) const; bool matchesCheck (TRI_doc_mptr_t& element, TRI_document_collection_t* collection,