summaryrefslogtreecommitdiff
path: root/cpp/src/IcePack/Registry.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/IcePack/Registry.cpp')
-rw-r--r--cpp/src/IcePack/Registry.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/cpp/src/IcePack/Registry.cpp b/cpp/src/IcePack/Registry.cpp
index 3a83ec1a862..ee2a8b87df1 100644
--- a/cpp/src/IcePack/Registry.cpp
+++ b/cpp/src/IcePack/Registry.cpp
@@ -79,8 +79,10 @@ IcePack::Registry::start(bool nowarn)
if(stat(_envName.c_str(), &filestat) != 0 || !S_ISDIR(filestat.st_mode))
{
Error out(_communicator->getLogger());
- out << "property `IcePack.Registry.Data' is not set to a valid directory path";
- return false;
+ SyscallException ex(__FILE__, __LINE__);
+ ex.error = getSystemErrno();
+ out << "property `IcePack.Registry.Data' is set to an invalid path:\n" << ex;
+ return false;
}
}
@@ -246,7 +248,7 @@ IcePack::Registry::start(bool nowarn)
ObjectPrx queryPrx = clientAdapter->createDirectProxy(stringToIdentity("IcePack/Query"));
try
{
- objectRegistry->remove(queryPrx);
+ objectRegistry->remove(queryPrx->ice_getIdentity());
}
catch(const ObjectNotExistException&)
{
@@ -264,7 +266,7 @@ IcePack::Registry::start(bool nowarn)
ObjectPrx adminPrx = adminAdapter->createDirectProxy(stringToIdentity("IcePack/Admin"));
try
{
- objectRegistry->remove(adminPrx);
+ objectRegistry->remove(adminPrx->ice_getIdentity());
}
catch(const ObjectNotExistException&)
{