diff options
author | Vijay Pai <vpai@google.com> | 2018-10-24 12:39:21 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-10-24 12:39:21 -0700 |
commit | 89a6e22a2287138b1cb58a1f9c9237d8af5d2ec5 (patch) | |
tree | 5972f3e46d8d3750b43055c34fe80cf952283d9f | |
parent | d6fe648ed74f54029ace85d3599776516371f54f (diff) | |
parent | 22dc39ae6696638a14ca802aa2b3a962f0b4393b (diff) |
Merge pull request #16984 from vjpai/varargs
Generalize CatchingCallback function
-rw-r--r-- | include/grpcpp/impl/codegen/callback_common.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/include/grpcpp/impl/codegen/callback_common.h b/include/grpcpp/impl/codegen/callback_common.h index ca2f867d04..a9835973ac 100644 --- a/include/grpcpp/impl/codegen/callback_common.h +++ b/include/grpcpp/impl/codegen/callback_common.h @@ -32,16 +32,16 @@ namespace grpc { namespace internal { /// An exception-safe way of invoking a user-specified callback function -template <class Func, class Arg> -void CatchingCallback(Func&& func, Arg&& arg) { +template <class Func, class... Args> +void CatchingCallback(Func&& func, Args&&... args) { #if GRPC_ALLOW_EXCEPTIONS try { - func(arg); + func(std::forward<Args>(args)...); } catch (...) { // nothing to return or change here, just don't crash the library } #else // GRPC_ALLOW_EXCEPTIONS - func(arg); + func(std::forward<Args>(args)...); #endif // GRPC_ALLOW_EXCEPTIONS } |