diff options
author | Craig Tiller <ctiller@google.com> | 2017-02-28 08:35:32 -0800 |
---|---|---|
committer | Craig Tiller <ctiller@google.com> | 2017-02-28 08:35:32 -0800 |
commit | c2515d0c64618eb2d4f7d7e87f2771014252a82a (patch) | |
tree | 453f3ef577f4f0e7f24d9b2e9b4a65c44e69b6b1 /src/cpp/server/server_context.cc | |
parent | 549c46b68fd9fdb3541691b20ec220f1dcbc076d (diff) | |
parent | cd232f64c634cba1e95b30db5d270114db6b1fc4 (diff) |
Merge github.com:grpc/grpc into always-use-port-server
Diffstat (limited to 'src/cpp/server/server_context.cc')
-rw-r--r-- | src/cpp/server/server_context.cc | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/src/cpp/server/server_context.cc b/src/cpp/server/server_context.cc index 6edbc90927..05c05c8695 100644 --- a/src/cpp/server/server_context.cc +++ b/src/cpp/server/server_context.cc @@ -33,7 +33,9 @@ #include <grpc++/server_context.h> +#include <algorithm> #include <mutex> +#include <utility> #include <grpc++/completion_queue.h> #include <grpc++/impl/call.h> @@ -133,8 +135,7 @@ ServerContext::ServerContext() sent_initial_metadata_(false), compression_level_set_(false) {} -ServerContext::ServerContext(gpr_timespec deadline, grpc_metadata* metadata, - size_t metadata_count) +ServerContext::ServerContext(gpr_timespec deadline, grpc_metadata_array* arr) : completion_op_(nullptr), has_notify_when_done_tag_(false), async_notify_when_done_tag_(nullptr), @@ -143,12 +144,8 @@ ServerContext::ServerContext(gpr_timespec deadline, grpc_metadata* metadata, cq_(nullptr), sent_initial_metadata_(false), compression_level_set_(false) { - for (size_t i = 0; i < metadata_count; i++) { - client_metadata_.map()->insert( - std::pair<grpc::string_ref, grpc::string_ref>( - StringRefFromSlice(&metadata[i].key), - StringRefFromSlice(&metadata[i].value))); - } + std::swap(*client_metadata_.arr(), *arr); + client_metadata_.FillMap(); } ServerContext::~ServerContext() { |