reference for inactive object



Hi,

	I noticed that when you create a reference for an object not yet
activated (using create_reference_with_id) that the orb returns
OBJECT_NOT_EXIST when a client uses that reference. This happens *even*
when the object has (later) been activated and is now in the active object
map. The following patch seems to fix it for me. Am I just being naive?

-----
diff -ur ORBit-0.5.7.old/src/orb/orbit_poa.c
ORBit-0.5.7/src/orb/orbit_poa.c
--- ORBit-0.5.7.old/src/orb/orbit_poa.c Thu Jun 14 20:33:04 2001
+++ ORBit-0.5.7/src/orb/orbit_poa.c     Thu Jun 14 20:34:55 2001
@@ -450,6 +450,11 @@

        if(!servant) {
                switch(poa->request_processing) {
+                case PortableServer_USE_ACTIVE_OBJECT_MAP_ONLY:
+                        obj_impl = g_hash_table_lookup(poa->active_object_map, oid);
+                        if(obj_impl)
+                                servant = obj_impl->servant;
+                        break;
                case PortableServer_USE_SERVANT_MANAGER:
                        servant = ORBit_POA_ServantManager_use_servant(poa,
                                                                       recv_buffer,
-----

Good Luck,
Mark.





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]