Index: /source/ariba/communication/BaseCommunication.cpp
===================================================================
--- /source/ariba/communication/BaseCommunication.cpp	(revision 5644)
+++ /source/ariba/communication/BaseCommunication.cpp	(revision 5645)
@@ -75,5 +75,5 @@
 	for (vector<endpoint_reference>::iterator i = remote_endpoints.begin();
 		i != remote_endpoints.end(); i++) {
-		if (*i->endpoint == *endpoint) {
+		if ((*i->endpoint).type_id() == endpoint->type_id() && (*i->endpoint) == *endpoint) {
 			i->count--;
 			if (i->count==0) {
