1
0
Fork 0

fix stringification of keys with _id type

This commit is contained in:
jsteemann 2017-02-21 13:43:07 +01:00
parent c892aa6a5b
commit deb0ff1110
1 changed files with 6 additions and 8 deletions

View File

@ -411,13 +411,11 @@ void Functions::Stringify(transaction::Methods* trx,
return; return;
} }
if (slice.isObject() || slice.isArray()) { VPackOptions* options = trx->transactionContextPtr()->getVPackOptionsForDump();
VPackDumper dumper(&buffer, trx->transactionContextPtr()->getVPackOptions()); VPackOptions adjustedOptions = *options;
dumper.dump(slice); adjustedOptions.escapeUnicode = false;
return; adjustedOptions.escapeForwardSlashes = false;
} VPackDumper dumper(&buffer, &adjustedOptions);
VPackDumper dumper(&buffer);
dumper.dump(slice); dumper.dump(slice);
} }
@ -2270,7 +2268,7 @@ AqlValue Functions::Zip(arangodb::aql::Query* query,
for (VPackValueLength i = 0; i < n; ++i) { for (VPackValueLength i = 0; i < n; ++i) {
buffer->reset(); buffer->reset();
Stringify(trx, adapter, keysSlice.at(i)); Stringify(trx, adapter, keysSlice.at(i));
builder->add(std::string(buffer->c_str(), buffer->length()), valuesSlice.at(i)); builder->add(buffer->c_str(), buffer->length(), valuesSlice.at(i));
} }
builder->close(); builder->close();
return AqlValue(builder.get()); return AqlValue(builder.get());