summaryrefslogtreecommitdiff
path: root/python/tag.cc
diff options
context:
space:
mode:
authorJulian Andres Klode <jak@debian.org>2009-07-30 20:31:47 +0200
committerJulian Andres Klode <jak@debian.org>2009-07-30 20:31:47 +0200
commit67c86eb63c861e9048c8b712654d65dd86d77330 (patch)
tree33aa2bcb1481734920132478d52f6475cc6dc3e2 /python/tag.cc
parent0a53a962ea50141dacd09e0e9f6228233c12e1f1 (diff)
parent1d67c8142d295004c894473df5457b8ce9ed6197 (diff)
downloadpython-apt-67c86eb63c861e9048c8b712654d65dd86d77330.tar.gz
Merge 0.7.11.1-0.7.12.0 from unstable.
Diffstat (limited to 'python/tag.cc')
-rw-r--r--python/tag.cc25
1 files changed, 25 insertions, 0 deletions
diff --git a/python/tag.cc b/python/tag.cc
index 24a43320..b1a3e520 100644
--- a/python/tag.cc
+++ b/python/tag.cc
@@ -108,6 +108,29 @@ static PyObject *TagSecFind(PyObject *Self,PyObject *Args)
return PyString_FromStringAndSize(Start,Stop-Start);
}
+static char *doc_FindRaw = "FindRaw(Name) -> String/None";
+static PyObject *TagSecFindRaw(PyObject *Self,PyObject *Args)
+{
+ char *Name = 0;
+ char *Default = 0;
+ if (PyArg_ParseTuple(Args,"s|z",&Name,&Default) == 0)
+ return 0;
+
+ unsigned Pos;
+ if (GetCpp<pkgTagSection>(Self).Find(Name,Pos) == false)
+ {
+ if (Default == 0)
+ Py_RETURN_NONE;
+ return PyString_FromString(Default);
+ }
+
+ const char *Start;
+ const char *Stop;
+ GetCpp<pkgTagSection>(Self).Get(Start,Stop,Pos);
+
+ return PyString_FromStringAndSize(Start,Stop-Start);
+}
+
static char *doc_FindFlag = "FindFlag(Name) -> integer/none";
static PyObject *TagSecFindFlag(PyObject *Self,PyObject *Args)
{
@@ -410,10 +433,12 @@ static PyMethodDef TagSecMethods[] =
{
// Query
{"find",TagSecFind,METH_VARARGS,doc_Find},
+ {"find_raw",TagSecFindRaw,METH_VARARGS,doc_FindRaw},
{"find_flag",TagSecFindFlag,METH_VARARGS,doc_FindFlag},
{"bytes",TagSecBytes,METH_VARARGS,doc_Bytes},
#ifdef COMPAT_0_7
{"Find",TagSecFind,METH_VARARGS,doc_Find},
+ {"FindRaw",TagSecFindRaw,METH_VARARGS,doc_FindRaw},
{"FindFlag",TagSecFindFlag,METH_VARARGS,doc_FindFlag},
{"Bytes",TagSecBytes,METH_VARARGS,doc_Bytes},
#endif