diff options
Diffstat (limited to 'TAO/tao/ORB.i')
-rw-r--r-- | TAO/tao/ORB.i | 19 |
1 files changed, 6 insertions, 13 deletions
diff --git a/TAO/tao/ORB.i b/TAO/tao/ORB.i index 89ddfb694a1..6a34deb048b 100644 --- a/TAO/tao/ORB.i +++ b/TAO/tao/ORB.i @@ -11,25 +11,18 @@ TAO_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE CORBA::ULong CORBA::ORB::_incr_refcnt (void) { - ACE_GUARD_RETURN (TAO_SYNCH_MUTEX, - guard, - lock_, - 0); return ++this->refcount_; } ACE_INLINE CORBA::ULong CORBA::ORB::_decr_refcnt (void) { - { - ACE_GUARD_RETURN (TAO_SYNCH_MUTEX, mon, this->lock_, 0); - --this->refcount_; - - if (this->refcount_ != 0) - { - return this->refcount_; - } - } + CORBA::ULong count = --this->refcount_; + + if (count != 0) + { + return count; + } delete this; return 0; |