summaryrefslogtreecommitdiff
path: root/python/string.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/string.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/string.cc')
-rw-r--r--python/string.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/python/string.cc b/python/string.cc
index a5016103..7abe2d17 100644
--- a/python/string.cc
+++ b/python/string.cc
@@ -91,7 +91,7 @@ PyObject *StrStringToBool(PyObject *Self,PyObject *Args)
char *Str = 0;
if (PyArg_ParseTuple(Args,"s",&Str) == 0)
return 0;
- return Py_BuildValue("i",StringToBool(Str));
+ return MkPyNumber(StringToBool(Str));
}
PyObject *StrStrToTime(PyObject *Self,PyObject *Args)
@@ -107,7 +107,7 @@ PyObject *StrStrToTime(PyObject *Self,PyObject *Args)
return Py_None;
}
- return Py_BuildValue("i",Result);
+ return MkPyNumber(Result);
}
PyObject *StrCheckDomainList(PyObject *Self,PyObject *Args)