summaryrefslogtreecommitdiff
path: root/python/acquire.cc
diff options
context:
space:
mode:
authorJulian Andres Klode <jak@debian.org>2011-04-12 11:38:25 +0200
committerJulian Andres Klode <jak@debian.org>2011-04-12 11:38:25 +0200
commitf441b008883170d6a8c4cfeb814b0c07a27e6afd (patch)
tree6773ef5fec948428e98fd0a7bb6956372c21305f /python/acquire.cc
parent91603aac68593f6749428825d7e94b75873927f4 (diff)
downloadpython-apt-f441b008883170d6a8c4cfeb814b0c07a27e6afd.tar.gz
apt_pkg: Fix unsigned/long-vs-int issues (LP: #610820)
This fix is large, but simple in concept. Instead of relying on Py_BuildValue and type signatures, or type-specific conversion functions, create a new set of overloaded MkPyNumber() functions that automatically do the right thing for each numerical type.
Diffstat (limited to 'python/acquire.cc')
-rw-r--r--python/acquire.cc14
1 files changed, 7 insertions, 7 deletions
diff --git a/python/acquire.cc b/python/acquire.cc
index ab90bbdd..6169ff40 100644
--- a/python/acquire.cc
+++ b/python/acquire.cc
@@ -51,17 +51,17 @@ static PyObject *acquireworker_get_status(PyObject *self, void *closure)
static PyObject *acquireworker_get_current_size(PyObject *self, void *closure)
{
- return Py_BuildValue("k",GetCpp<pkgAcquire::Worker*>(self)->CurrentSize);
+ return MkPyNumber(GetCpp<pkgAcquire::Worker*>(self)->CurrentSize);
}
static PyObject *acquireworker_get_total_size(PyObject *self, void *closure)
{
- return Py_BuildValue("k",GetCpp<pkgAcquire::Worker*>(self)->TotalSize);
+ return MkPyNumber(GetCpp<pkgAcquire::Worker*>(self)->TotalSize);
}
static PyObject *acquireworker_get_resumepoint(PyObject *self, void *closure)
{
- return Py_BuildValue("k",GetCpp<pkgAcquire::Worker*>(self)->ResumePoint);
+ return MkPyNumber(GetCpp<pkgAcquire::Worker*>(self)->ResumePoint);
}
static PyGetSetDef acquireworker_getset[] = {
@@ -225,7 +225,7 @@ static PyObject *PkgAcquireRun(PyObject *Self,PyObject *Args)
pkgAcquire::RunResult run = fetcher->Run(pulseInterval);
- return HandleErrors(Py_BuildValue("i",run));
+ return HandleErrors(MkPyNumber(run));
}
@@ -259,15 +259,15 @@ static PyMethodDef PkgAcquireMethods[] = {
#define fetcher (GetCpp<pkgAcquire*>(Self))
static PyObject *PkgAcquireGetTotalNeeded(PyObject *Self,void*)
{
- return Py_BuildValue("L", fetcher->TotalNeeded());
+ return MkPyNumber(fetcher->TotalNeeded());
}
static PyObject *PkgAcquireGetFetchNeeded(PyObject *Self,void*)
{
- return Py_BuildValue("L", fetcher->FetchNeeded());
+ return MkPyNumber(fetcher->FetchNeeded());
}
static PyObject *PkgAcquireGetPartialPresent(PyObject *Self,void*)
{
- return Py_BuildValue("L", fetcher->PartialPresent());
+ return MkPyNumber(fetcher->PartialPresent());
}
#undef fetcher