summaryrefslogtreecommitdiff
path: root/python/policy.cc
diff options
context:
space:
mode:
Diffstat (limited to 'python/policy.cc')
-rw-r--r--python/policy.cc14
1 files changed, 8 insertions, 6 deletions
diff --git a/python/policy.cc b/python/policy.cc
index 96b83abd..0ace3e67 100644
--- a/python/policy.cc
+++ b/python/policy.cc
@@ -93,11 +93,12 @@ static char *policy_read_pinfile_doc =
"and add it to the policy.";
static PyObject *policy_read_pinfile(PyObject *self, PyObject *arg) {
- if (!PyString_Check(arg))
+ PyApt_Filename name;
+ if (!name.init(arg))
return 0;
pkgPolicy *policy = GetCpp<pkgPolicy *>(self);
- return PyBool_FromLong(ReadPinFile(*policy, PyString_AsString(arg)));
+ return PyBool_FromLong(ReadPinFile(*policy, name));
}
#if (APT_PKG_MAJOR >= 4 && APT_PKG_MINOR >= 8)
@@ -107,11 +108,12 @@ static char *policy_read_pindir_doc =
"and add them to the policy.";
static PyObject *policy_read_pindir(PyObject *self, PyObject *arg) {
- if (!PyString_Check(arg))
+ PyApt_Filename name;
+ if (!name.init(arg))
return 0;
pkgPolicy *policy = GetCpp<pkgPolicy *>(self);
- return PyBool_FromLong(ReadPinDir(*policy, PyString_AsString(arg)));
+ return PyBool_FromLong(ReadPinDir(*policy, name));
}
#endif
@@ -132,9 +134,9 @@ static PyObject *policy_create_pin(PyObject *self, PyObject *args) {
pkgPolicy *policy = GetCpp<pkgPolicy *>(self);
if (strcmp(type,"Version") == 0 || strcmp(type, "version") == 0)
match_type = pkgVersionMatch::Version;
- if (strcmp(type,"Release") == 0 || strcmp(type, "release") == 0)
+ else if (strcmp(type,"Release") == 0 || strcmp(type, "release") == 0)
match_type = pkgVersionMatch::Release;
- if (strcmp(type,"Origin") == 0 || strcmp(type, "origin") == 0)
+ else if (strcmp(type,"Origin") == 0 || strcmp(type, "origin") == 0)
match_type = pkgVersionMatch::Origin;
else
match_type = pkgVersionMatch::None;