diff options
Diffstat (limited to 'cpp/src/IceLocatorDiscovery/PluginI.cpp')
-rw-r--r-- | cpp/src/IceLocatorDiscovery/PluginI.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/cpp/src/IceLocatorDiscovery/PluginI.cpp b/cpp/src/IceLocatorDiscovery/PluginI.cpp index 4ca7b6ec35e..e96e62dfca6 100644 --- a/cpp/src/IceLocatorDiscovery/PluginI.cpp +++ b/cpp/src/IceLocatorDiscovery/PluginI.cpp @@ -370,8 +370,9 @@ Request::invoke(const Ice::LocatorPrxPtr& l) _locatorPrx = l; try { + auto self = shared_from_this(); l->ice_invoke_async(_operation, _mode, _inParams, - [self = shared_from_this()](bool ok, vector<Ice::Byte> outParams) + [self](bool ok, vector<Ice::Byte> outParams) { pair<const Ice::Byte*, const Ice::Byte*> outPair; if(outParams.empty()) @@ -385,7 +386,7 @@ Request::invoke(const Ice::LocatorPrxPtr& l) } self->response(ok, move(outPair)); }, - [self = shared_from_this()](exception_ptr e) + [self](exception_ptr e) { try { |