summaryrefslogtreecommitdiff
path: root/py/modules/IcePy/Communicator.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'py/modules/IcePy/Communicator.cpp')
-rw-r--r--py/modules/IcePy/Communicator.cpp14
1 files changed, 12 insertions, 2 deletions
diff --git a/py/modules/IcePy/Communicator.cpp b/py/modules/IcePy/Communicator.cpp
index a8267dae0a0..de20c929783 100644
--- a/py/modules/IcePy/Communicator.cpp
+++ b/py/modules/IcePy/Communicator.cpp
@@ -453,6 +453,10 @@ communicatorStringToProxy(CommunicatorObject* self, PyObject* args)
try
{
proxy = (*self->communicator)->stringToProxy(str);
+ if(proxy)
+ {
+ return createProxy(proxy, *self->communicator);
+ }
}
catch(const Ice::Exception& ex)
{
@@ -460,7 +464,8 @@ communicatorStringToProxy(CommunicatorObject* self, PyObject* args)
return 0;
}
- return createProxy(proxy, *self->communicator);
+ Py_INCREF(Py_None);
+ return Py_None;
}
#ifdef WIN32
@@ -515,6 +520,10 @@ communicatorPropertyToProxy(CommunicatorObject* self, PyObject* args)
try
{
proxy = (*self->communicator)->propertyToProxy(str);
+ if(proxy)
+ {
+ return createProxy(proxy, *self->communicator);
+ }
}
catch(const Ice::Exception& ex)
{
@@ -522,7 +531,8 @@ communicatorPropertyToProxy(CommunicatorObject* self, PyObject* args)
return 0;
}
- return createProxy(proxy, *self->communicator);
+ Py_INCREF(Py_None);
+ return Py_None;
}
#ifdef WIN32