* RemotingServices.cs: Client identities are registered using the full url,
authorLluis Sanchez <lluis@novell.com>
Tue, 17 Feb 2004 15:15:42 +0000 (15:15 -0000)
committerLluis Sanchez <lluis@novell.com>
Tue, 17 Feb 2004 15:15:42 +0000 (15:15 -0000)
  not the object uri, so they must be unregistered using the same key.

svn path=/trunk/mcs/; revision=23168

mcs/class/corlib/System.Runtime.Remoting/ChangeLog
mcs/class/corlib/System.Runtime.Remoting/RemotingServices.cs

index 245348afc63b1bb7ca20fcd2a0cb8cf609e7df70..6b32a4ef1c154b3e9a7c9a7c525a93ec6f151de2 100755 (executable)
@@ -1,3 +1,8 @@
+2004-02-17  Lluis Sanchez Gual  <lluis@ximian.com>
+
+       * RemotingServices.cs: Client identities are registered using the full url,
+         not the object uri, so they must be unregistered using the same key.
+
 2004-01-24  Lluis Sanchez Gual  <lluis@ximian.com>
 
        * TypeInfo.cs: The list of interfaces may be null. Added check.
index 10ea212fffd6793a21adff4b218077e2f279c13c..1ea633229344188a3798556af8d094966e597f96 100644 (file)
@@ -566,7 +566,12 @@ namespace System.Runtime.Remoting
                        lock (uri_hash)
                        {
                                if (!ident.Disposed) {
-                                       uri_hash.Remove (ident.ObjectUri);
+                                       ClientIdentity clientId = ident as ClientIdentity;
+                                       if (clientId != null)
+                                               uri_hash.Remove (GetNormalizedUri (clientId.TargetUri));
+                                       else
+                                               uri_hash.Remove (ident.ObjectUri);
+                                               
                                        ident.Disposed = true;
                                }
                        }