diff --git a/3rdParty/V8/CMakeLists.txt b/3rdParty/V8/CMakeLists.txt index 427659831a..b2b08f558f 100644 --- a/3rdParty/V8/CMakeLists.txt +++ b/3rdParty/V8/CMakeLists.txt @@ -61,14 +61,24 @@ list(APPEND V8_GYP_ARGS ## ICU EXPORTS ################################################################################ -set(ICU_VERSION - "54.1" +set(ICU_COMPACT_VERSION + "54" CACHE INTERNAL - "ICU: Version" + "ICU: compact Version" ) +set(ICU_VERSION + "${ICU_COMPACT_VERSION}.1" + CACHE INTERNAL + "ICU: Version" + ) + +set(ICU_BASEDIR ${V8_DIR}/third_party/icu/source) +set(ICU_DT "${ICU_BASEDIR}/data/in/icudtl.dat") +set(ICU_DT_DEST "icudt${ICU_COMPACT_VERSION}l.dat") + set(ICU_INCLUDE_DIR - ${V8_DIR}/third_party/icu/source/common;${V8_DIR}/third_party/icu/source/i18n;${V8_DIR}/third_party/icu/source/io + ${ICU_BASEDIR}/common;${ICU_BASEDIR}/i18n;${ICU_BASEDIR}/io CACHE INTERNAL "ICU: include path" FORCE @@ -449,3 +459,6 @@ else () set(LINK_DIRECTORIES "${LINK_DIRECTORIES}" PARENT_SCOPE) endif() +install(FILES ${ICU_DT} + DESTINATION "share/arangodb/" + RENAME ${ICU_DT_DEST}) diff --git a/arangod/Agency/Store.cpp b/arangod/Agency/Store.cpp index 52b99c1912..8eb759f9bc 100644 --- a/arangod/Agency/Store.cpp +++ b/arangod/Agency/Store.cpp @@ -192,7 +192,7 @@ NodeType Node::type() const { // lh-value at path vector Node& Node::operator ()(std::vector const& pv) { if (pv.size()) { - std::string const key = pv.at(0); + std::string const& key = pv.at(0); if (_children.find(key) == _children.end()) { _children[key] = std::make_shared(key, this); } @@ -207,7 +207,7 @@ Node& Node::operator ()(std::vector const& pv) { // rh-value at path vector Node const& Node::operator ()(std::vector const& pv) const { if (pv.size()) { - std::string const key = pv.at(0); + std::string const& key = pv.at(0); if (_children.find(key) == _children.end()) { throw StoreException( std::string("Node ") + key + std::string(" not found")); @@ -866,14 +866,16 @@ void Store::dumpToBuilder (Builder& builder) const { } } { - VPackObjectBuilder guard(&builder); + VPackArrayBuilder garray(&builder); for (auto const& i : _observer_table) { + VPackObjectBuilder guard(&builder); builder.add(i.first, VPackValue(i.second)); } } { - VPackObjectBuilder guard(&builder); + VPackArrayBuilder garray(&builder); for (auto const& i : _observed_table) { + VPackObjectBuilder guard(&builder); builder.add(i.first, VPackValue(i.second)); } }