[Telepathy-commits] [telepathy-python/master] Don't suck at requesting handles

Olli Salli olli.salli at collabora.co.uk
Thu Dec 18 08:13:56 PST 2008


---
 src/server/conn.py |   16 ++++++++++++----
 1 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/src/server/conn.py b/src/server/conn.py
index 0d718a9..362d9e7 100644
--- a/src/server/conn.py
+++ b/src/server/conn.py
@@ -210,11 +210,19 @@ class Connection(_Connection):
 
         ret = []
         for name in names:
-            id = self.get_handle_id()
-            handle = Handle(id, handle_type, name)
-            self._handles[handle_type, id] = handle
+            handle = None
+            for candidate in self._handles.values():
+                if candidate.get_name() == name:
+                    handle = candidate
+                    break
+
+            if not handle:
+                id = self.get_handle_id()
+                handle = Handle(id, handle_type, name)
+                self._handles[handle_type, id] = handle
+
             self.add_client_handle(handle, sender)
-            ret.append(id)
+            ret.append(handle.get_id())
 
         return ret
 
-- 
1.5.6.5



More information about the Telepathy-commits mailing list