diff options
Diffstat (limited to 'cppe/src/IceE/ProxyFactory.cpp')
-rw-r--r-- | cppe/src/IceE/ProxyFactory.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/cppe/src/IceE/ProxyFactory.cpp b/cppe/src/IceE/ProxyFactory.cpp index 8f1cd6d1141..d4c7cd5a6e8 100644 --- a/cppe/src/IceE/ProxyFactory.cpp +++ b/cppe/src/IceE/ProxyFactory.cpp @@ -99,12 +99,12 @@ IceInternal::ProxyFactory::checkRetryAfterException(const LocalException& ex, co #ifdef ICEE_HAS_LOCATOR if(dynamic_cast<const ObjectNotExistException*>(&ex)) { - IndirectReferencePtr ir = IndirectReferencePtr::dynamicCast(ref); - if(!ir || !ir->getLocatorInfo()) + LocatorInfoPtr li = ref->getLocatorInfo(); + if(!li) { ex.ice_throw(); } - ir->getLocatorInfo()->clearObjectCache(ir); + li->clearObjectCache(IndirectReferencePtr::dynamicCast(ref)); } else #endif |