summaryrefslogtreecommitdiff
path: root/csharp/src
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2016-08-09 10:27:05 +0200
committerBenoit Foucher <benoit@zeroc.com>2016-08-09 10:27:05 +0200
commitdd668368ea1323e6f94f0edbaa6fc382db6b4d2c (patch)
tree2ca1af321c9ba86d42ecfac0885dab6311efa128 /csharp/src
parentFixed ICE-7197 - ported AMI missing test to C++11 (diff)
downloadice-dd668368ea1323e6f94f0edbaa6fc382db6b4d2c.tar.bz2
ice-dd668368ea1323e6f94f0edbaa6fc382db6b4d2c.tar.xz
ice-dd668368ea1323e6f94f0edbaa6fc382db6b4d2c.zip
Fixed ICE-7270 - ice_getConnection now returns a non-null connection even if connection caching is disabled
Diffstat (limited to 'csharp/src')
-rw-r--r--csharp/src/Ice/OutgoingAsync.cs5
-rw-r--r--csharp/src/Ice/Proxy.cs6
2 files changed, 8 insertions, 3 deletions
diff --git a/csharp/src/Ice/OutgoingAsync.cs b/csharp/src/Ice/OutgoingAsync.cs
index 887a31e03eb..9fbc4fb71f4 100644
--- a/csharp/src/Ice/OutgoingAsync.cs
+++ b/csharp/src/Ice/OutgoingAsync.cs
@@ -1176,6 +1176,11 @@ namespace IceInternal
return AsyncStatusSent;
}
+ public Ice.Connection getConnection()
+ {
+ return cachedConnection_;
+ }
+
public void invoke(string operation)
{
observer_ = ObserverHelper.get(proxy_, operation, null);
diff --git a/csharp/src/Ice/Proxy.cs b/csharp/src/Ice/Proxy.cs
index 9abcaa9e219..11a02af4b6e 100644
--- a/csharp/src/Ice/Proxy.cs
+++ b/csharp/src/Ice/Proxy.cs
@@ -2145,7 +2145,7 @@ namespace Ice
result.throwLocalException();
if(responseCallback_ != null)
{
- responseCallback_.Invoke(getProxy().ice_getCachedConnection());
+ responseCallback_.Invoke(((ProxyGetConnection)OutgoingAsync).getConnection());
}
}
@@ -2172,7 +2172,7 @@ namespace Ice
public override bool handleResponse(bool ok, OutgoingAsyncBase og)
{
- SetResult(_proxy.ice_getCachedConnection());
+ SetResult(((ProxyGetConnection)og).getConnection());
return false;
}
@@ -2211,7 +2211,7 @@ namespace Ice
{
var resultI = AsyncResultI.check(r, this, __ice_getConnection_name);
resultI.wait();
- return ice_getCachedConnection();
+ return resultI.getConnection();
}
private AsyncResult<Callback_Object_ice_getConnection> begin_ice_getConnectionInternal(AsyncCallback callback,