diff options
author | schmidt <douglascraigschmidt@users.noreply.github.com> | 2003-04-27 00:26:09 +0000 |
---|---|---|
committer | schmidt <douglascraigschmidt@users.noreply.github.com> | 2003-04-27 00:26:09 +0000 |
commit | 036a8d3337cf70c5df3c58d8a961aace10b2a207 (patch) | |
tree | e6240d3e868a452f5655888a54d0fe7a4c3260cc /TAO | |
parent | 7b744a0d1950f5ac21c779409f1bb2a39214bb8a (diff) | |
download | ATCD-036a8d3337cf70c5df3c58d8a961aace10b2a207.tar.gz |
ChangeLogTag:Sat Apr 26 12:00:36 2003 Venkita Subramonian <venkita@cs.wustl.edu>
Diffstat (limited to 'TAO')
-rw-r--r-- | TAO/ChangeLog | 10 | ||||
-rw-r--r-- | TAO/tao/PortableServer/Servant_Base.cpp | 10 | ||||
-rw-r--r-- | TAO/tao/PortableServer/Servant_Base.h | 9 | ||||
-rw-r--r-- | TAO/utils/IOR-parser/ior-handler.cpp | 4 |
4 files changed, 26 insertions, 7 deletions
diff --git a/TAO/ChangeLog b/TAO/ChangeLog index 6aa3479525a..51e594991e9 100644 --- a/TAO/ChangeLog +++ b/TAO/ChangeLog @@ -1,3 +1,13 @@ +Sat Apr 26 16:08:15 2003 Douglas C. Schmidt <schmidt@ace.cs.wustl.edu> + + * tao/PortableServer/Servant_Base.{h,cpp} Added an accessor method + that returns the current reference count. Thanks to + Zsolt Zsoldos <zsolt.zsoldos@rogers.com> for suggesting this. + + * utils/IOR-parser/ior-handler.cpp (interpretIor): Fixed this utility + so that it correctly handles GIOP 1.2! Thanks to Dave Ryan + <djryan7@pacbell.net> for this fix. + Sat Apr 26 11:12:53 2003 Balachandran Natarajan <bala@dre.vanderbilt.edu> * orbsvcs/orbsvcs/Runtime_Scheduler.cpp: Fixed a compile error in diff --git a/TAO/tao/PortableServer/Servant_Base.cpp b/TAO/tao/PortableServer/Servant_Base.cpp index 2b6843ed37f..32b3f9b5bf1 100644 --- a/TAO/tao/PortableServer/Servant_Base.cpp +++ b/TAO/tao/PortableServer/Servant_Base.cpp @@ -360,9 +360,13 @@ TAO_RefCountServantBase::_remove_ref (ACE_ENV_SINGLE_ARG_DECL_NOT_USED) const CORBA::ULong new_count = --this->ref_count_; if (new_count == 0) - { - delete this; - } + delete this; +} + +long +TAO_RefCountServantBase::_ref_count (ACE_ENV_SINGLE_ARG_DECL_NOT_USED) const +{ + return this->ref_count_.value (); } TAO_RefCountServantBase::TAO_RefCountServantBase (void) diff --git a/TAO/tao/PortableServer/Servant_Base.h b/TAO/tao/PortableServer/Servant_Base.h index c03f51ea213..545e50a77ae 100644 --- a/TAO/tao/PortableServer/Servant_Base.h +++ b/TAO/tao/PortableServer/Servant_Base.h @@ -6,11 +6,10 @@ * * $Id$ * - * @author Irfan Pyarali + * @author Irfan Pyarali <irfan@cs.wustl.edu> */ //============================================================================= - #ifndef TAO_SERVANT_BASE_H #define TAO_SERVANT_BASE_H #include "ace/pre.h" @@ -170,6 +169,12 @@ public: */ virtual void _remove_ref (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS); + /** + * Returns the current reference count value. This method is + * non-standard and is only here to simplify debugging. + */ + virtual long _ref_count (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS) const; + protected: /// Constructor: initial reference count is one. diff --git a/TAO/utils/IOR-parser/ior-handler.cpp b/TAO/utils/IOR-parser/ior-handler.cpp index 59fcc361322..288fa63e2d2 100644 --- a/TAO/utils/IOR-parser/ior-handler.cpp +++ b/TAO/utils/IOR-parser/ior-handler.cpp @@ -367,10 +367,10 @@ IorHandler::interpretIor (char *thisIor, struct IOR_Manager *thisIorInfo) ulongValue = getOctet2Field((char *)(thisIor + numHexCharsRead), &numCharsToSkip); - if ((ulongValue != 0) && (ulongValue != 1)) + if ((ulongValue != 0) && (ulongValue != 1) && (ulongValue != 2)) { ACE_DEBUG ((LM_DEBUG, - "IIOP minor version != 0 or 1\n")); + "IIOP minor version != 0, 1, or 2\n")); ACE_OS::exit (1); } |