mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-08-11 09:13:57 -04:00
py3: fix PyInt types for python2/python3
This commit is contained in:
parent
76447ba379
commit
a14454a857
@ -343,7 +343,11 @@ error:
|
||||
static PyObject *
|
||||
PDFDoc_pages_getter(PDFDoc *self, void *closure) {
|
||||
int pages = self->doc->GetPageCount();
|
||||
#if PY_MAJOR_VERSION >= 3
|
||||
PyObject *ans = PyLong_FromLong(static_cast<long>(pages));
|
||||
#else
|
||||
PyObject *ans = PyInt_FromLong(static_cast<long>(pages));
|
||||
#endif
|
||||
if (ans != NULL) Py_INCREF(ans);
|
||||
return ans;
|
||||
}
|
||||
|
@ -97,7 +97,11 @@ class OutputDevice : public PdfOutputDevice {
|
||||
char *buf = NULL;
|
||||
Py_ssize_t len = 0;
|
||||
|
||||
#if PY_MAJOR_VERSION >= 3
|
||||
if ((temp = PyLong_FromSize_t(lLen)) == NULL) throw pyerr();
|
||||
#else
|
||||
if ((temp = PyInt_FromSize_t(lLen)) == NULL) throw pyerr();
|
||||
#endif
|
||||
ret = PyObject_CallFunctionObjArgs(read_func, temp, NULL);
|
||||
NUKE(temp);
|
||||
if (ret != NULL) {
|
||||
@ -118,7 +122,11 @@ class OutputDevice : public PdfOutputDevice {
|
||||
|
||||
void Seek(size_t offset) {
|
||||
PyObject *ret, *temp;
|
||||
#if PY_MAJOR_VERSION >= 3
|
||||
if ((temp = PyLong_FromSize_t(offset)) == NULL) throw pyerr();
|
||||
#else
|
||||
if ((temp = PyInt_FromSize_t(offset)) == NULL) throw pyerr();
|
||||
#endif
|
||||
ret = PyObject_CallFunctionObjArgs(seek_func, temp, NULL);
|
||||
NUKE(temp);
|
||||
if (ret == NULL) {
|
||||
@ -144,7 +152,11 @@ class OutputDevice : public PdfOutputDevice {
|
||||
PyErr_SetString(PyExc_Exception, "tell() method did not return a number");
|
||||
throw pyerr();
|
||||
}
|
||||
#if PY_MAJOR_VERSION >= 3
|
||||
ans = PyLong_AsUnsignedLongMask(ret);
|
||||
#else
|
||||
ans = PyInt_AsUnsignedLongMask(ret);
|
||||
#endif
|
||||
Py_DECREF(ret);
|
||||
if (PyErr_Occurred() != NULL) throw pyerr();
|
||||
|
||||
@ -191,4 +203,3 @@ PyObject* pdf::write_doc(PdfMemDocument *doc, PyObject *f) {
|
||||
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user