Merge pull request #1975 from SemanticsOS/lambdafu/pycms-overflow

Fix integer overflow on ILP32 systems (32-bit Linux).
This commit is contained in:
wiredfool 2016-06-21 14:39:36 +01:00 committed by GitHub
commit c9d92e2bfe

View File

@ -983,12 +983,9 @@ cms_profile_getattr_attributes(CmsProfileObject* self, void* closure)
{
cmsUInt64Number attr;
cmsGetHeaderAttributes(self->profile, &attr);
#ifdef _WIN32
// Windows is weird this way.
return PyLong_FromLongLong((long long) attr);
#else
return PyInt_FromLong((long) attr);
#endif
/* This works just as well on Windows (LLP64), 32-bit Linux
(ILP32) and 64-bit Linux (LP64) systems. */
return PyLong_FromUnsignedLongLong((unsigned long long) attr);
}
static PyObject*