summaryrefslogtreecommitdiff
path: root/python/modules/IcePy/Operation.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'python/modules/IcePy/Operation.cpp')
-rw-r--r--python/modules/IcePy/Operation.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/python/modules/IcePy/Operation.cpp b/python/modules/IcePy/Operation.cpp
index 01741df2ccb..47dab4af475 100644
--- a/python/modules/IcePy/Operation.cpp
+++ b/python/modules/IcePy/Operation.cpp
@@ -1035,7 +1035,7 @@ void
IcePy::ParamInfo::unmarshaled(PyObject* val, PyObject* target, void* closure)
{
assert(PyTuple_Check(target));
- long i = reinterpret_cast<long>(closure);
+ Py_ssize_t i = reinterpret_cast<Py_ssize_t>(closure);
PyTuple_SET_ITEM(target, i, val);
Py_INCREF(val); // PyTuple_SET_ITEM steals a reference.
}
@@ -1654,7 +1654,7 @@ IcePy::TypedInvocation::unmarshalResults(const pair<const Ice::Byte*, const Ice:
ParamInfoPtr info = *p;
if(!info->optional)
{
- void* closure = reinterpret_cast<void*>(info->pos);
+ void* closure = reinterpret_cast<void*>(static_cast<Py_ssize_t>(info->pos));
info->type->unmarshal(is, info, results.get(), closure, false, &info->metaData);
}
}
@@ -1665,7 +1665,7 @@ IcePy::TypedInvocation::unmarshalResults(const pair<const Ice::Byte*, const Ice:
if(_op->returnType && !_op->returnType->optional)
{
assert(_op->returnType->pos == 0);
- void* closure = reinterpret_cast<void*>(_op->returnType->pos);
+ void* closure = reinterpret_cast<void*>(static_cast<Py_ssize_t>(_op->returnType->pos));
_op->returnType->type->unmarshal(is, _op->returnType, results.get(), closure, false, &_op->metaData);
}
@@ -1677,7 +1677,7 @@ IcePy::TypedInvocation::unmarshalResults(const pair<const Ice::Byte*, const Ice:
ParamInfoPtr info = *p;
if(is->readOptional(info->tag, info->type->optionalFormat()))
{
- void* closure = reinterpret_cast<void*>(info->pos);
+ void* closure = reinterpret_cast<void*>(static_cast<Py_ssize_t>(info->pos));
info->type->unmarshal(is, info, results.get(), closure, true, &info->metaData);
}
else